Search Results for

    Show / Hide Table of Contents

    Class MeshTrimLoop

    Delete triangles inside on/near-surface trimming curve, and then adapt the new boundary loop to conform to the loop.

    [DANGER] To use this class, we require a spatial data structure we can project onto. Currently we assume that this is a DMesh3AABBTree because if you don't provide a seed triangle, we use FindNearestTriangle() to find this index on the input mesh. So, it must be a tree for the exact same mesh (!). However we then delete a bunch of triangles and use this spatial DS only for reprojection. Possibly these should be two separate things? Or force caller to provide seed triangle for trim loop, instead of solving this problem for them? (But basically there is no way around having a full mesh copy...)

    TODO:

    • output boundary EdgeLoop that has been aligned w/ trim curve
    • handle cases where input mesh has open borders
    Inheritance
    Object
    MeshTrimLoop
    Inherited Members
    Object.ToString()
    Object.Equals(Object)
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetHashCode()
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: g3
    Assembly: cs.temp.dll.dll
    Syntax
    public class MeshTrimLoop

    Constructors

    MeshTrimLoop(DMesh3, DCurve3, Vector3d, DMeshAABBTree3)

    Declaration
    public MeshTrimLoop(DMesh3 mesh, DCurve3 trimline, Vector3d vSeedPt, DMeshAABBTree3 spatial = null)
    Parameters
    Type Name Description
    DMesh3 mesh
    DCurve3 trimline
    Vector3d vSeedPt
    DMeshAABBTree3 spatial

    MeshTrimLoop(DMesh3, DCurve3, Int32, DMeshAABBTree3)

    Cut mesh with plane. Assumption is that plane normal is Z value.

    Declaration
    public MeshTrimLoop(DMesh3 mesh, DCurve3 trimline, int tSeedTID, DMeshAABBTree3 spatial = null)
    Parameters
    Type Name Description
    DMesh3 mesh
    DCurve3 trimline
    Int32 tSeedTID
    DMeshAABBTree3 spatial

    Fields

    Mesh

    Declaration
    public DMesh3 Mesh
    Field Value
    Type Description
    DMesh3

    RemeshBorderRings

    Declaration
    public int RemeshBorderRings
    Field Value
    Type Description
    Int32

    RemeshRounds

    Declaration
    public int RemeshRounds
    Field Value
    Type Description
    Int32

    SmoothingAlpha

    Declaration
    public double SmoothingAlpha
    Field Value
    Type Description
    Double

    Spatial

    Declaration
    public DMeshAABBTree3 Spatial
    Field Value
    Type Description
    DMeshAABBTree3

    TargetEdgeLength

    Declaration
    public double TargetEdgeLength
    Field Value
    Type Description
    Double

    TrimLine

    Declaration
    public DCurve3 TrimLine
    Field Value
    Type Description
    DCurve3

    Methods

    Trim()

    Declaration
    public virtual bool Trim()
    Returns
    Type Description
    Boolean

    Validate()

    Declaration
    public virtual ValidationStatus Validate()
    Returns
    Type Description
    ValidationStatus
    In This Article
    Back to top ViRGIS VR GIS