Package fabmetheus_utilities :: Package geometry :: Package solids :: Module triangle_mesh
[hide private]
[frames] | no frames]

Module triangle_mesh

source code

Triangle Mesh holds the faces and edges of a triangular mesh.


Date: $Date: 2008/02/05 $

Author: Enrique Perez (perez_enrique@yahoo.com)

License: GNU Affero General Public License http://www.gnu.org/licenses/agpl.html

Classes [hide private]
  EdgePair
  TriangleMesh
A triangle mesh.
  ZoneArrangement
A zone arrangement.
Functions [hide private]
 
addEdgePair(edgePairTable, edges, faceEdgeIndex, remainingEdgeIndex, remainingEdgeTable)
Add edge pair to the edge pair table.
source code
 
addFacesByConcaveLoop(faces, indexedLoop)
Add faces from a polygon which is concave.
source code
 
addFacesByConvex(faces, indexedLoop)
Add faces from a convex polygon.
source code
 
addFacesByConvexBottomTopLoop(faces, indexedLoopBottom, indexedLoopTop)
Add faces from loops.
source code
 
addFacesByConvexLoops(faces, indexedLoops)
Add faces from loops.
source code
 
addFacesByConvexReversed(faces, indexedLoop)
Add faces from a reversed convex polygon.
source code
 
addFacesByGrid(faces, grid)
Add faces from grid.
source code
 
addFacesByLoop(faces, indexedLoop)
Add faces from a polygon which may be concave.
source code
 
addFacesByLoopReversed(faces, indexedLoop)
Add faces from a reversed convex polygon.
source code
 
addLoopToPointTable(loop, pointTable)
Add the points in the loop to the point table.
source code
 
addPillarByLoops(faces, indexedLoops)
Add pillar by loops which may be concave.
source code
 
addPillarFromConvexLoopsGrids(faces, indexedGrids, indexedLoops)
Add pillar from convex loops and grids.
source code
 
addPillarFromConvexLoopsGridTop(faces, indexedGridTop, indexedLoops)
Add pillar from convex loops and grid top.
source code
 
addPointsAtZ(edgePair, points, radius, vertexes, z)
Add point complexes on the segment between the edge intersections with z.
source code
 
addSymmetricXPath(outputs, path, x)
Add x path output to outputs.
source code
 
addSymmetricXPaths(outputs, paths, x)
Add x paths outputs to outputs.
source code
 
addSymmetricYPath(outputs, path, y)
Add y path output to outputs.
source code
 
addSymmetricYPaths(outputs, paths, y)
Add y paths outputs to outputs.
source code
 
addWithLeastLength(importRadius, loops, point)
Insert a point into a loop, at the index at which the loop would be shortest.
source code
 
convertXMLElement(geometryOutput, xmlElement)
Convert the xml element to a TriangleMesh xml element.
source code
 
getAddIndexedGrid(grid, vertexes, z)
Get and add an indexed grid.
source code
 
getAddIndexedLoop(loop, vertexes, z)
Get and add an indexed loop.
source code
 
getAddIndexedLoops(loop, vertexes, zList)
Get and add indexed loops.
source code
 
getAdditionalLoopLength(loop, point, pointIndex)
Get the additional length added by inserting a point into a loop.
source code
 
getBridgeDirection(belowLoops, layerLoops, layerThickness)
Get span direction for the majority of the overhanging extrusion perimeter, if any.
source code
 
getBridgeLoops(layerThickness, loop)
Get the inset bridge loops from the loop.
source code
 
getCarveIntersectionFromEdge(edge, vertexes, z)
Get the complex where the carve intersects the edge.
source code
 
getDescendingAreaLoops(allPoints, corners, importRadius)
Get descending area loops which include most of the points.
source code
 
getDescendingAreaOrientedLoops(allPoints, corners, importRadius)
Get descending area oriented loops which include most of the points.
source code
 
getDoubledRoundZ(overhangingSegment, segmentRoundZ)
Get doubled plane angle around z of the overhanging segment.
source code
 
getGeometryOutputByFacesVertexes(faces, vertexes)
Get geometry output dictionary by faces and vertexes.
source code
 
getGeometryOutputCopy(object)
Get the geometry output copy.
source code
 
getIndexedCellLoopsFromIndexedGrid(grid)
Get indexed cell loops from an indexed grid.
source code
 
getIndexedLoopFromIndexedGrid(indexedGrid)
Get indexed loop from around the indexed grid.
source code
 
getInsetPoint(loop, tinyRadius)
Get the inset vertex.
source code
 
getIsPointCloseInline(close, loop, point, pointIndex)
Insert a point into a loop, at the index at which the loop would be shortest.
source code
 
getIsPathEntirelyOutsideTriangle(begin, center, end, vector3Path)
Determine if a path is entirely outside another loop.
source code
 
getLoopsFromCorrectMesh(edges, faces, vertexes, z)
Get loops from a carve of a correct mesh.
source code
 
getLoopsFromUnprovenMesh(edges, faces, importRadius, vertexes, z)
Get loops from a carve of an unproven mesh.
source code
 
getLoopsWithCorners(corners, importRadius, loops, pointTable)
Add corners to the loops.
source code
 
getNextEdgeIndexAroundZ(edge, faces, remainingEdgeTable)
Get the next edge index in the mesh carve.
source code
 
getOrientedLoops(loops)
Orient the loops which must be in descending order.
source code
 
getOverhangDirection(belowOutsetLoops, segmentBegin, segmentEnd)
Add to span direction from the endpoint segments which overhang the layer below.
source code
 
getOverlapRatio(loop, pointTable)
Get the overlap ratio between the loop and the point table.
source code
 
getPath(edges, pathIndexes, loop, z)
Get the path from the edge intersections.
source code
 
getPillarOutput(loops)
Get pillar output.
source code
 
getPillarsOutput(loopLists)
Get pillars output.
source code
 
getRemainingEdgeTable(edges, vertexes, z)
Get the remaining edge hashtable.
source code
 
getRemainingLoopAddFace(faces, remainingLoop)
Get the remaining loop and add face.
source code
 
getSharedFace(firstEdge, faces, secondEdge)
Get the face which is shared by two edges.
source code
 
getSymmetricXLoop(path, vertexes, x)
Get symmetrix x loop.
source code
 
getSymmetricYLoop(path, vertexes, y)
Get symmetrix y loop.
source code
 
getUnifiedOutput(outputs)
Get unified output.
source code
 
getUniqueVertexes(loops)
Get unique vertexes.
source code
 
getWideAnglePointIndex(loop)
Get a point index which has a wide enough angle, most point indexes have a wide enough angle, this is just to make sure.
source code
 
getZAddExtruderPathsBySolidCarving(rotatedLoopLayer, solidCarving, z)
Get next z and add extruder loops by solid carving.
source code
 
isInline(beginComplex, centerComplex, endComplex)
Determine if the three complex points form a line.
source code
 
isPathAdded(edges, faces, loops, remainingEdgeTable, vertexes, z)
Get the path indexes around a triangle mesh carve and add the path to the flat loops.
source code
 
processXMLElement(xmlElement)
Process the xml element.
source code
 
setEdgeMaximumMinimum(edge, vertexes)
Set the edge maximum and minimum.
source code
 
sortLoopsInOrderOfArea(isDescending, loops)
Sort the loops in the order of area according isDescending.
source code
Variables [hide private]
  __credits__ = 'Art of Illusion <http://www.artofillusion.org/>'
  __package__ = 'fabmetheus_utilities.geometry.solids'