Wrong distance and position of exploded dynamic component
-
I am new to Sketchup extension development. Attached file is part of a dynamic component after getting it exploded. Then I applied the following code:
def self.definition(instance) if instance.is_a?(Sketchup;;ComponentInstance) # ComponentInstance return instance.definition elsif instance.is_a?(Sketchup;;Group) if instance.entities.parent.instances.include?(instance) return instance.entities.parent else Sketchup.active_model.definitions.each { |definition| return definition if definition.instances.include?(instance) } end elsif instance.is_a?(Sketchup;;Image) Sketchup.active_model.definitions.each { |definition| return definition if definition.image? && definition.instances.include?(instance) } end return nil # Error. We should never exit here. end mod = Sketchup.active_model # Open model ent = mod.entities # All entities in model sel = mod.selection # Current selection puts ent[0] faces = definition(ent[0]).entities.grep(Sketchup;;Face) puts faces faces[0].material = "Purple" faces[0].vertices.each {|v| puts v.position} puts '---' f0_v = faces[0].vertices for i in 0..f0_v.size - 2 puts f0_v[i].position.distance(f0_v[i+1].position) end puts f0_v[3].position.distance(f0_v[0].position)
The result is not as I am expected:
#<Sketchup;;Group;0x0000024da5ea60b0> #<Sketchup;;Face;0x0000024da5ea5f20> #<Sketchup;;Face;0x0000024da5ea5e30> #<Sketchup;;Face;0x0000024da5ea5d18> #<Sketchup;;Face;0x0000024da5ea5cc8> #<Sketchup;;Face;0x0000024da5ea5c78> #<Sketchup;;Face;0x0000024da5ea5c50> (0 mm, 0 mm, 300 mm) (0 mm, 0 mm, 0 mm) (300 mm, 0 mm, 0 mm) (300 mm, 0 mm, 300 mm) --- 300 mm 300 mm 300 mm 300 mm
Any one can help me?
I am sorry for my bad English.
-
The result looks good.
What were you expecting to be different ?
Advertisement