Yes. I have Active Python 2.4 with the hack and your script (and Kim's)
works fine in 6.01.
Bernard Lebel wrote:
Indeed. Before 6.0, that used to be a typical dispatch problem that
required the pywin32 hack or forced dynamic dispatching to work.
This works perfectly for me in 5.11:
import win32com
c = win32com.client.constants
xsi = Application
oClusters = xsi.selection(0).activeprimitive.geometry.clusters
for oCls in oClusters:
if ( oCls.type == c.siSampledPointCluster ):
oCluster = oCls
break
t = oCls.Elements
xsi.logmessage( t.count )
xsi.logmessage( xsi.classname( t ) )
xsi.logmessage( str( t.array ) )
I wonder if hacking pywin32, even if used in 6.0, would fix this.
Cheers
Bernard
On 4/13/07, Kim Aldis <XSI(at)kim-aldis.co.uk> wrote:
It's misleading. Putting a logmessage of oCls in the loop prints a
sensible
name. it's only when you try and access any properties that it kicks you
out. If you haven't checked it thoroughly you may want to.
> -----Original Message-----
> From: owner-xsi(at)Softimage.COM [mailto:owner-xsi(at)Softimage.COM] On
> Behalf Of Bernard Lebel
> Sent: 13 April 2007 15:16
> To: XSI(at)Softimage.COM
> Subject: Re: Python for loops on objects
>
> No problem at all here.
> Note that I'm using XSI 5.11, so my pywin32 is hacked......
>
> Cheers
> Bernard
>
>
>
>
> On 4/13/07, Kim Aldis <XSI(at)kim-aldis.co.uk> wrote:
> > Has anyone noticed this seems to give you an object in oCls but you
> can't
> > actually get any of its properties :-
> >
> > for oCls in oClusters :
> > if ( oCls.type == constants.siSampledPointCluster ):
> > oCluster = oCls
> > break
> >
> > t = oCls.Elements # ERROR!
> >
> >
> > But this works just fine:-
> >
> > for i in range( oClusters.count ) :
> > oCls = oClusters(i)
> > if ( oCls.type == constants.siSampledPointCluster ):
> > oCluster = oCls
> > break
> >
> > t = oCls.Elements # Works
> >
> > www.kim-aldis.co.uk | kim(at)kim-aldis.co.uk
> >
> >
> >
> > ---
> > Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in
> body:
> > unsubscribe xsi
> >
> ---
> Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in
> body:
> unsubscribe xsi
---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in
body:
unsubscribe xsi
---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in
body:
unsubscribe xsi
---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi