![]() |
【转帖】ype casting of array of solidworks objec
type casting of array of solidworks object
hi all in vb6 i could auto cast variant containing multiple solidworks object to an array of solidworks type geometry how can i do that in vb.net for instance dim swapp as sldworks.sldworks dim part as modeldoc2 dim sk as sketch dim vsegs as variant ' variant to recive segments dim oseges() as sketchsegment ' array of sketchsegments sub main() set swapp = application.sldworks set part = swapp.activedoc set sk = part.getactivesketch2 vsegs = sk.getsketchsegments ' getting the segments into a variant '==== this is the problematic line in vb.net it works greate in vb6 oseges = vsegs ' autocasting of sw objects into an arry of sketchsegments ' == the only way i could have made it is by casting segments one by one 'is there a better way end sub it looks like its related to the fact that an object can be an array of mixed objects any idea ? regards dudi peer eci try oseges = ctype(vsegs, sketchsegment()) hi luke thanks , i have tried that already but it doesn't work. type casting of object of objects is problematic i have tried succssefully converting it using arry.convertall deligate but it involves a little too much programing the wierd thing though that it works perfectly easy in c# so it looks to me more of a semantic problem regards dudi yes it will be. in c# you just explicit cast it like so: oseges = (sketchsegment[])vsegs; job done. rule: use c# |
所有的时间均为北京时间。 现在的时间是 05:42 PM. |