Hmm, works here too. Digging deeper.
> -----Original Message-----
> From: owner-xsi(at)Softimage.COM [mailto:owner-xsi(at)Softimage.COM] On
> Behalf Of Francois Lord
> Sent: 13 April 2007 19:33
> To: XSI(at)Softimage.COM
> Subject: Re: Python for loops on objects
>
> 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
---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi