class Loop

Parent: Entity | Class Index
Methods:convex?, edges, edgeuses, face, outer?, verticies |
Sample Code:looptests.rb |

Loop is a low level topology class that will not need to be used often. A Loop is a chain of Edges that bound a Face.

Instance Methods

convex?
Determine if the loop is convex.
Syntax:
status = loop.convex?
Arguments:
Return Value:
status - true if convex, false if not convex
Comments:
Example:
depth = 100 width = 100 model = Sketchup.active_model entities = model.active_entities pts = [] pts[0] = [0, 0, 0] pts[1] = [width, 0, 0] pts[2] = [width, depth, 0] pts[3] = [0, depth, 0] # Add the face to the entities in the model face = entities.add_face pts loop = face.outer_loop status = loop.convex? if (status) UI.messagebox "Loop is Convex" else UI.messagebox "Loop is not Convex" end

edges
Get an array of the edges that define the loop.
Syntax:
edges = loop.edges
Arguments:
Return Value:
edges - an array of Edge objects if successful
Comments:
Example:
depth = 100 width = 100 model = Sketchup.active_model entities = model.active_entities pts = [] pts[0] = [0, 0, 0] pts[1] = [width, 0, 0] pts[2] = [width, depth, 0] pts[3] = [0, depth, 0] # Add the face to the entities in the model face = entities.add_face pts loop = face.outer_loop edges = loop.edges if (edges) UI.messagebox edges else UI.messagebox "Failure" end

edgeuses
Get an array of the EdgeUse objects that define this loop.
Syntax:
edgeuses = loop.edgeuse
Arguments:
Return Value:
edgeuses - an array of EdgeUse objects if successful
Comments:
Example:
depth = 100 width = 100 model = Sketchup.active_model entities = model.active_entities pts = [] pts[0] = [0, 0, 0] pts[1] = [width, 0, 0] pts[2] = [width, depth, 0] pts[3] = [0, depth, 0] # Add the face to the entities in the model face = entities.add_face pts edgeuses = loop.edgeuses if (edgeuses) UI.messagebox edgeuses else UI.messagebox "Failure" end

face
Get the Face object that is bounded by this loop.
Syntax:
face = loop.face
Arguments:
Return Value:
face - a Face object if successful
Comments:
Example:
depth = 100 width = 100 model = Sketchup.active_model entities = model.active_entities pts = [] pts[0] = [0, 0, 0] pts[1] = [width, 0, 0] pts[2] = [width, depth, 0] pts[3] = [0, depth, 0] # Add the face to the entities in the model face = entities.add_face pts loop = face.outer_loop f = loop.face if (f) UI.messagebox f else UI.messagebox "Failure" end

outer?
Determine if this is an outer loop. Each face has one outer loop, and will have one loop for each hole.
Syntax:
status = loop.outer?
Arguments:
Return Value:
status - true if the loop is an outer loop, false if it is not an outer loop
Comments:
Example:
depth = 100 width = 100 model = Sketchup.active_model entities = model.active_entities pts = [] pts[0] = [0, 0, 0] pts[1] = [width, 0, 0] pts[2] = [width, depth, 0] pts[3] = [0, depth, 0] # Add the face to the entities in the model face = entities.add_face pts loop = face.outer_loop status = loop.outer? if (status) UI.messagebox status else UI.messagebox "Failure" end

vertices
Get an Array of the vertexes that are part of the loop. The array will be ordered correctly.
Syntax:
vertices = loop.vertices
Arguments:
Return Value:
verticies - an array of Vertex objects if successful
Comments:
Example:
depth = 100 width = 100 model = Sketchup.active_model entities = model.active_entities pts = [] pts[0] = [0, 0, 0] pts[1] = [width, 0, 0] pts[2] = [width, depth, 0] pts[3] = [0, depth, 0] # Add the face to the entities in the model face = entities.add_face pts loop = face.outer_loop v = loop.vertices if (v) UI.messagebox v else UI.messagebox "Failure" end