![]() |
【转帖】is this api possible
is this api possible?
hi, i'm newb in vb and with sw api. before i start moving further ahead with anything. is it possible to write a macro to draw cubes based of an input files with 1 or 0. 1 means draw a cube, 0 means nothing. the input file are element values of a 3d matrix of 1 and 0. so basically i'll be drawing cubes to re-represent this 3d matrix. thanks. yes it is possible very easily too. any problems just post and i'll lend a hand cool beans. i think i got some trial and errors with record macro and i think i got it figured to making the cubes. thanks. i'll give it a shot myself first. hi i need help with this. nothing gets drawn with the following code dim swapp as object dim part as object dim selmgr as object dim boolstatus as boolean dim longstatus as long, longwarnings as long dim feature as object sub main() set swapp = application.sldworks set part = swapp.activedoc dim i as integer dim x1 as integer dim y1 as integer dim z1 as integer dim x2 as integer dim y2 as integer dim z2 as integer 'import binary 3d array here 'write logic to set x1 to z2 'x1 = 1 for i = 1 to 2 x1 = 0.1 * (i - 1) y1 = 0 z2 = 0 x2 = 0.1 * i y2 = 0.1 z2 = 0 'create a 0.1 set selmgr = part.selectionmanager dim vsklines as variant vsklines = part.sketchmanager.createcornerrectangle(x1, y1, z1, x2, y2, z2) part.sketchaddconstraints "sgsamelength" part.sketchaddconstraints "sgsamelength" part.featuremanager.featureextrusion2 true, false, false, 0, 0, 0.1, 0, false, false, false, false, 0.01745329251994, 0.01745329251994, false, false, false, false, 1, 1, 1, 0, 0, false part.selectionmanager.enablecontourselection = 0 next i end sub dim x1 as double dim y1 as double dim z1 as double dim x2 as double dim y2 as double dim z2 as double integer can contain only whole numbers that was dumb of me. thanks! okay here's my problem. i'm reading a text file line by line. if it's a 1 draw a cube if it's 0 dun draw anything. i need help to when i'm on a different slice. the code used to draw a square and extrude does not work. what am i assuming wrong here? i've attached my code and the file. any help is greatly appreciated dim vsklines as variant part.sketchmanager.insert3dsketch true vsklines = part.sketchmanager.createcornerrectangle(x1, y1, z1, x2, y2, z2) ' part.sketchaddconstraints "sgsamelength" ' part.sketchaddconstraints "sgsamelength" edited: 01/09/2009 at 11:22 pm by ivana kolin i'm sorry is that what's wrong or what is used to be replaced? i cant seem to get what you pasted to work. thanks. you must use 3dsketch if you want change "z" parameter. your code: ..... if toprint = 1 then set selmgr = part.selectionmanager dim vsklines as variant part.sketchmanager.insert3dsketch true vsklines = part.sketchmanager.createcornerrectangle(x1, y1, z1, x2, y2, z2) ' part.sketchaddconstraints "sgsamelength" ' part.sketchaddconstraints "sgsamelength" part.featuremanager.featureextrusion2 true, false, true, 0, 0, sfactor, 0, false, false, false, false, 0.01745329251994, 0.01745329251994, false, false, false, false, 1, 1, 1, 0, 0, false part.selectionmanager.enablecontourselection = 0 end if ...... or make and use for each slide new sketch plane with distance z*sfactor to right plane, then you can use normal sketch edited: 01/10/2009 at 04:45 am by ivana kolin thanks for the reply. i tried the first suggestion but in the 2nd slice on the top line there should be four cubes but only two are extruded. do you see the same thing as i do? |
所有的时间均为北京时间。 现在的时间是 10:50 PM. |