Search Results for

    Show / Hide Table of Contents

    Class NTMesh3

    Inheritance
    Object
    NTMesh3
    Implements
    IDeformableMesh
    IMesh
    IPointSet
    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 NTMesh3 : IDeformableMesh, IMesh, IPointSet

    Constructors

    NTMesh3(DMesh3)

    Declaration
    public NTMesh3(DMesh3 copy)
    Parameters
    Type Name Description
    DMesh3 copy

    NTMesh3(MeshComponents)

    Declaration
    public NTMesh3(MeshComponents flags)
    Parameters
    Type Name Description
    MeshComponents flags

    NTMesh3(NTMesh3)

    Declaration
    public NTMesh3(NTMesh3 copy)
    Parameters
    Type Name Description
    NTMesh3 copy

    NTMesh3(Boolean, Boolean, Boolean)

    Declaration
    public NTMesh3(bool bWantNormals = true, bool bWantColors = false, bool bWantTriGroups = false)
    Parameters
    Type Name Description
    Boolean bWantNormals
    Boolean bWantColors
    Boolean bWantTriGroups

    Fields

    InvalidEdge

    Declaration
    public static readonly Index2i InvalidEdge
    Field Value
    Type Description
    Index2i

    InvalidID

    Declaration
    public const int InvalidID = -1
    Field Value
    Type Description
    Int32

    InvalidTriangle

    Declaration
    public static readonly Index3i InvalidTriangle
    Field Value
    Type Description
    Index3i

    InvalidVertex

    Declaration
    public static readonly Vector3d InvalidVertex
    Field Value
    Type Description
    Vector3d

    NonManifoldID

    Declaration
    public const int NonManifoldID = -2
    Field Value
    Type Description
    Int32

    Properties

    CachedBounds

    Declaration
    public AxisAlignedBox3d CachedBounds { get; }
    Property Value
    Type Description
    AxisAlignedBox3d

    CachedIsClosed

    Declaration
    public bool CachedIsClosed { get; }
    Property Value
    Type Description
    Boolean

    Components

    Declaration
    public MeshComponents Components { get; }
    Property Value
    Type Description
    MeshComponents

    EdgeCount

    Declaration
    public int EdgeCount { get; }
    Property Value
    Type Description
    Int32

    HasTriangleGroups

    Declaration
    public bool HasTriangleGroups { get; }
    Property Value
    Type Description
    Boolean

    HasVertexColors

    Declaration
    public bool HasVertexColors { get; }
    Property Value
    Type Description
    Boolean

    HasVertexNormals

    Declaration
    public bool HasVertexNormals { get; }
    Property Value
    Type Description
    Boolean

    HasVertexUVs

    Declaration
    public bool HasVertexUVs { get; }
    Property Value
    Type Description
    Boolean

    IsCompact

    Declaration
    public bool IsCompact { get; }
    Property Value
    Type Description
    Boolean

    IsCompactV

    Declaration
    public bool IsCompactV { get; }
    Property Value
    Type Description
    Boolean

    MaxEdgeID

    Declaration
    public int MaxEdgeID { get; }
    Property Value
    Type Description
    Int32

    MaxGroupID

    Declaration
    public int MaxGroupID { get; }
    Property Value
    Type Description
    Int32

    MaxTriangleID

    Declaration
    public int MaxTriangleID { get; }
    Property Value
    Type Description
    Int32

    MaxVertexID

    Declaration
    public int MaxVertexID { get; }
    Property Value
    Type Description
    Int32

    ShapeTimestamp

    Declaration
    public int ShapeTimestamp { get; }
    Property Value
    Type Description
    Int32

    Timestamp

    Declaration
    public int Timestamp { get; }
    Property Value
    Type Description
    Int32

    TriangleCount

    Declaration
    public int TriangleCount { get; }
    Property Value
    Type Description
    Int32

    VertexCount

    Declaration
    public int VertexCount { get; }
    Property Value
    Type Description
    Int32

    Methods

    AllocateTriangleGroup()

    Declaration
    public int AllocateTriangleGroup()
    Returns
    Type Description
    Int32

    AppendTriangle(Index3i, Int32)

    Declaration
    public int AppendTriangle(Index3i tv, int gid = -1)
    Parameters
    Type Name Description
    Index3i tv
    Int32 gid
    Returns
    Type Description
    Int32

    AppendTriangle(Int32, Int32, Int32, Int32)

    Declaration
    public int AppendTriangle(int v0, int v1, int v2, int gid = -1)
    Parameters
    Type Name Description
    Int32 v0
    Int32 v1
    Int32 v2
    Int32 gid
    Returns
    Type Description
    Int32

    AppendVertex(NewVertexInfo)

    Declaration
    public int AppendVertex(NewVertexInfo info)
    Parameters
    Type Name Description
    NewVertexInfo info
    Returns
    Type Description
    Int32

    AppendVertex(Vector3d)

    Declaration
    public int AppendVertex(Vector3d v)
    Parameters
    Type Name Description
    Vector3d v
    Returns
    Type Description
    Int32

    BoundaryEdgeIndices()

    Declaration
    public IEnumerable<int> BoundaryEdgeIndices()
    Returns
    Type Description
    IEnumerable<Int32>

    CheckValidity(FailMode)

    Declaration
    public bool CheckValidity(FailMode eFailMode = FailMode.Throw)
    Parameters
    Type Name Description
    FailMode eFailMode
    Returns
    Type Description
    Boolean

    Copy(NTMesh3, Boolean, Boolean)

    Declaration
    public void Copy(NTMesh3 copy, bool bNormals = true, bool bColors = true)
    Parameters
    Type Name Description
    NTMesh3 copy
    Boolean bNormals
    Boolean bColors

    debug_check_is_edge(Int32)

    Declaration
    public void debug_check_is_edge(int e)
    Parameters
    Type Name Description
    Int32 e

    debug_check_is_triangle(Int32)

    Declaration
    public void debug_check_is_triangle(int t)
    Parameters
    Type Name Description
    Int32 t

    debug_check_is_vertex(Int32)

    Declaration
    public void debug_check_is_vertex(int v)
    Parameters
    Type Name Description
    Int32 v

    Deconstruct()

    Declaration
    public DMesh3 Deconstruct()
    Returns
    Type Description
    DMesh3

    DiscardTriangleGroups()

    Declaration
    public void DiscardTriangleGroups()

    DiscardVertexColors()

    Declaration
    public void DiscardVertexColors()

    DiscardVertexNormals()

    Declaration
    public void DiscardVertexNormals()

    edge_has_t(Int32, Int32)

    Declaration
    protected bool edge_has_t(int eid, int tid)
    Parameters
    Type Name Description
    Int32 eid
    Int32 tid
    Returns
    Type Description
    Boolean

    edge_has_v(Int32, Int32)

    Declaration
    protected bool edge_has_v(int eid, int vid)
    Parameters
    Type Name Description
    Int32 eid
    Int32 vid
    Returns
    Type Description
    Boolean

    edge_is_boundary(Int32)

    Declaration
    protected bool edge_is_boundary(int eid)
    Parameters
    Type Name Description
    Int32 eid
    Returns
    Type Description
    Boolean

    edge_other_v(Int32, Int32)

    Declaration
    protected int edge_other_v(int eID, int vID)
    Parameters
    Type Name Description
    Int32 eID
    Int32 vID
    Returns
    Type Description
    Int32

    EdgeIndices()

    Declaration
    public IEnumerable<int> EdgeIndices()
    Returns
    Type Description
    IEnumerable<Int32>

    EdgeTrianglesCount(Int32)

    Declaration
    public int EdgeTrianglesCount(int eID)
    Parameters
    Type Name Description
    Int32 eID
    Returns
    Type Description
    Int32

    EdgeTrianglesItr(Int32)

    Declaration
    public IEnumerable<int> EdgeTrianglesItr(int eID)
    Parameters
    Type Name Description
    Int32 eID
    Returns
    Type Description
    IEnumerable<Int32>

    EnableTriangleGroups(Int32)

    Declaration
    public void EnableTriangleGroups(int initial_group = 0)
    Parameters
    Type Name Description
    Int32 initial_group

    EnableVertexColors(Vector3f)

    Declaration
    public void EnableVertexColors(Vector3f initial_color)
    Parameters
    Type Name Description
    Vector3f initial_color

    EnableVertexNormals(Vector3f)

    Declaration
    public void EnableVertexNormals(Vector3f initial_normal)
    Parameters
    Type Name Description
    Vector3f initial_normal

    find_tri_neighbour_edge(Int32, Int32, Int32)

    Declaration
    protected int find_tri_neighbour_edge(int tID, int vA, int vB)
    Parameters
    Type Name Description
    Int32 tID
    Int32 vA
    Int32 vB
    Returns
    Type Description
    Int32

    find_tri_neighbour_index(Int32, Int32, Int32)

    Declaration
    protected int find_tri_neighbour_index(int tID, int vA, int vB)
    Parameters
    Type Name Description
    Int32 tID
    Int32 vA
    Int32 vB
    Returns
    Type Description
    Int32

    FindEdge(Int32, Int32)

    Declaration
    public int FindEdge(int vA, int vB)
    Parameters
    Type Name Description
    Int32 vA
    Int32 vB
    Returns
    Type Description
    Int32

    FindEdgeFromTri(Int32, Int32, Int32)

    Declaration
    public int FindEdgeFromTri(int vA, int vB, int t)
    Parameters
    Type Name Description
    Int32 vA
    Int32 vB
    Int32 t
    Returns
    Type Description
    Int32

    GetBounds()

    Declaration
    public AxisAlignedBox3d GetBounds()
    Returns
    Type Description
    AxisAlignedBox3d

    GetEdgeV(Int32)

    Declaration
    public Index2i GetEdgeV(int eID)
    Parameters
    Type Name Description
    Int32 eID
    Returns
    Type Description
    Index2i

    GetEdgeV(Int32, ref Vector3d, ref Vector3d)

    Declaration
    public bool GetEdgeV(int eID, ref Vector3d a, ref Vector3d b)
    Parameters
    Type Name Description
    Int32 eID
    Vector3d a
    Vector3d b
    Returns
    Type Description
    Boolean

    GetMaxVtxEdgeCount()

    Declaration
    public int GetMaxVtxEdgeCount()
    Returns
    Type Description
    Int32

    GetOrientedBoundaryEdgeV(Int32)

    Declaration
    public Index2i GetOrientedBoundaryEdgeV(int eID)
    Parameters
    Type Name Description
    Int32 eID
    Returns
    Type Description
    Index2i

    GetTriangle(Int32)

    Declaration
    public Index3i GetTriangle(int tID)
    Parameters
    Type Name Description
    Int32 tID
    Returns
    Type Description
    Index3i

    GetTriangleGroup(Int32)

    Declaration
    public int GetTriangleGroup(int tID)
    Parameters
    Type Name Description
    Int32 tID
    Returns
    Type Description
    Int32

    GetTriArea(Int32)

    Declaration
    public double GetTriArea(int tID)
    Parameters
    Type Name Description
    Int32 tID
    Returns
    Type Description
    Double

    GetTriBounds(Int32)

    Declaration
    public AxisAlignedBox3d GetTriBounds(int tID)
    Parameters
    Type Name Description
    Int32 tID
    Returns
    Type Description
    AxisAlignedBox3d

    GetTriEdge(Int32, Int32)

    Declaration
    public int GetTriEdge(int tid, int j)
    Parameters
    Type Name Description
    Int32 tid
    Int32 j
    Returns
    Type Description
    Int32

    GetTriEdges(Int32)

    Declaration
    public Index3i GetTriEdges(int tID)
    Parameters
    Type Name Description
    Int32 tID
    Returns
    Type Description
    Index3i

    GetTriFrame(Int32, Int32)

    Declaration
    public Frame3f GetTriFrame(int tID, int nEdge = 0)
    Parameters
    Type Name Description
    Int32 tID
    Int32 nEdge
    Returns
    Type Description
    Frame3f

    GetTriInfo(Int32, out Vector3d, out Double, out Vector3d)

    Declaration
    public void GetTriInfo(int tID, out Vector3d normal, out double fArea, out Vector3d vCentroid)
    Parameters
    Type Name Description
    Int32 tID
    Vector3d normal
    Double fArea
    Vector3d vCentroid

    GetTriNormal(Int32)

    Declaration
    public Vector3d GetTriNormal(int tID)
    Parameters
    Type Name Description
    Int32 tID
    Returns
    Type Description
    Vector3d

    GetTriVertex(Int32, Int32)

    Declaration
    public Vector3d GetTriVertex(int tid, int j)
    Parameters
    Type Name Description
    Int32 tid
    Int32 j
    Returns
    Type Description
    Vector3d

    GetTriVertices(Int32, ref Vector3d, ref Vector3d, ref Vector3d)

    Declaration
    public void GetTriVertices(int tID, ref Vector3d v0, ref Vector3d v1, ref Vector3d v2)
    Parameters
    Type Name Description
    Int32 tID
    Vector3d v0
    Vector3d v1
    Vector3d v2

    GetVertex(Int32)

    Declaration
    public Vector3d GetVertex(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    Vector3d

    GetVertex(Int32, ref NewVertexInfo, Boolean, Boolean, Boolean)

    Declaration
    public bool GetVertex(int vID, ref NewVertexInfo vinfo, bool bWantNormals, bool bWantColors, bool bWantUVs)
    Parameters
    Type Name Description
    Int32 vID
    NewVertexInfo vinfo
    Boolean bWantNormals
    Boolean bWantColors
    Boolean bWantUVs
    Returns
    Type Description
    Boolean

    GetVertexAll(Int32)

    Declaration
    public NewVertexInfo GetVertexAll(int i)
    Parameters
    Type Name Description
    Int32 i
    Returns
    Type Description
    NewVertexInfo

    GetVertexColor(Int32)

    Declaration
    public Vector3f GetVertexColor(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    Vector3f

    GetVertexf(Int32)

    Declaration
    public Vector3f GetVertexf(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    Vector3f

    GetVertexNormal(Int32)

    Declaration
    public Vector3f GetVertexNormal(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    Vector3f

    GetVertexUV(Int32)

    Declaration
    public Vector2f GetVertexUV(int i)
    Parameters
    Type Name Description
    Int32 i
    Returns
    Type Description
    Vector2f

    GetVtxEdgeCount(Int32)

    Declaration
    public int GetVtxEdgeCount(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    Int32

    GetVtxTriangleCount(Int32, Boolean)

    return # of triangles attached to vID, or -1 if invalid vertex

    Declaration
    public int GetVtxTriangleCount(int vID, bool bBruteForce = false)
    Parameters
    Type Name Description
    Int32 vID
    Boolean bBruteForce
    Returns
    Type Description
    Int32

    GetVtxTriangles(Int32, List<Int32>)

    Declaration
    public MeshResult GetVtxTriangles(int vID, List<int> vTriangles)
    Parameters
    Type Name Description
    Int32 vID
    List<Int32> vTriangles
    Returns
    Type Description
    MeshResult

    IsBoundaryEdge(Int32)

    Declaration
    public bool IsBoundaryEdge(int eid)
    Parameters
    Type Name Description
    Int32 eid
    Returns
    Type Description
    Boolean

    IsBoundaryTriangle(Int32)

    Declaration
    public bool IsBoundaryTriangle(int tID)
    Parameters
    Type Name Description
    Int32 tID
    Returns
    Type Description
    Boolean

    IsBoundaryVertex(Int32)

    Declaration
    public bool IsBoundaryVertex(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    Boolean

    IsBowtieVertex(Int32)

    returns true if vID is a "bowtie" vertex, ie multiple disjoint triangle sets in one-ring

    Declaration
    public bool IsBowtieVertex(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    Boolean

    IsClosed()

    Declaration
    public bool IsClosed()
    Returns
    Type Description
    Boolean

    IsEdge(Int32)

    Declaration
    public bool IsEdge(int eID)
    Parameters
    Type Name Description
    Int32 eID
    Returns
    Type Description
    Boolean

    IsNonManifoldEdge(Int32)

    Declaration
    public bool IsNonManifoldEdge(int eid)
    Parameters
    Type Name Description
    Int32 eid
    Returns
    Type Description
    Boolean

    IsTriangle(Int32)

    Declaration
    public bool IsTriangle(int tID)
    Parameters
    Type Name Description
    Int32 tID
    Returns
    Type Description
    Boolean

    IsVertex(Int32)

    Declaration
    public bool IsVertex(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    Boolean

    PokeTriangle(Int32, out NTMesh3.PokeTriangleInfo)

    Declaration
    public virtual MeshResult PokeTriangle(int tid, out NTMesh3.PokeTriangleInfo result)
    Parameters
    Type Name Description
    Int32 tid
    NTMesh3.PokeTriangleInfo result
    Returns
    Type Description
    MeshResult

    PokeTriangle(Int32, Vector3d, out NTMesh3.PokeTriangleInfo)

    Declaration
    public virtual MeshResult PokeTriangle(int tid, Vector3d baryCoordinates, out NTMesh3.PokeTriangleInfo result)
    Parameters
    Type Name Description
    Int32 tid
    Vector3d baryCoordinates
    NTMesh3.PokeTriangleInfo result
    Returns
    Type Description
    MeshResult

    RemoveTriangle(Int32, Boolean)

    Remove a tID from the mesh. Also removes any unreferenced edges after tri is removed. If bRemoveIsolatedVertices is false, then if you remove all tris from a vert, that vert is also removed. If bPreserveManifold, we check that you will not create a bowtie vertex (and return false). If this check is not done, you have to make sure you don't create a bowtie, because other code assumes we don't have bowties, and will not handle it properly

    Declaration
    public MeshResult RemoveTriangle(int tID, bool bRemoveIsolatedVertices = true)
    Parameters
    Type Name Description
    Int32 tID
    Boolean bRemoveIsolatedVertices
    Returns
    Type Description
    MeshResult

    SetTriangleGroup(Int32, Int32)

    Declaration
    public void SetTriangleGroup(int tid, int group_id)
    Parameters
    Type Name Description
    Int32 tid
    Int32 group_id

    SetVertex(Int32, Vector3d)

    Declaration
    public void SetVertex(int vID, Vector3d vNewPos)
    Parameters
    Type Name Description
    Int32 vID
    Vector3d vNewPos

    SetVertexColor(Int32, Vector3f)

    Declaration
    public void SetVertexColor(int vID, Vector3f vNewColor)
    Parameters
    Type Name Description
    Int32 vID
    Vector3f vNewColor

    SetVertexNormal(Int32, Vector3f)

    Declaration
    public void SetVertexNormal(int vID, Vector3f vNewNormal)
    Parameters
    Type Name Description
    Int32 vID
    Vector3f vNewNormal

    SetVertexUV(Int32, Vector2f)

    Declaration
    public void SetVertexUV(int vID, Vector2f UV)
    Parameters
    Type Name Description
    Int32 vID
    Vector2f UV

    SplitEdge(Int32, out NTMesh3.EdgeSplitInfo)

    Declaration
    public MeshResult SplitEdge(int eab, out NTMesh3.EdgeSplitInfo split)
    Parameters
    Type Name Description
    Int32 eab
    NTMesh3.EdgeSplitInfo split
    Returns
    Type Description
    MeshResult

    SplitEdge(Int32, Int32, out NTMesh3.EdgeSplitInfo)

    Declaration
    public MeshResult SplitEdge(int vA, int vB, out NTMesh3.EdgeSplitInfo split)
    Parameters
    Type Name Description
    Int32 vA
    Int32 vB
    NTMesh3.EdgeSplitInfo split
    Returns
    Type Description
    MeshResult

    tri_has_neighbour_t(Int32, Int32)

    Declaration
    protected bool tri_has_neighbour_t(int tCheck, int tNbr)
    Parameters
    Type Name Description
    Int32 tCheck
    Int32 tNbr
    Returns
    Type Description
    Boolean

    tri_has_sequential_v(Int32, Int32, Int32)

    Declaration
    protected bool tri_has_sequential_v(int tID, int vA, int vB)
    Parameters
    Type Name Description
    Int32 tID
    Int32 vA
    Int32 vB
    Returns
    Type Description
    Boolean

    tri_has_v(Int32, Int32)

    Declaration
    protected bool tri_has_v(int tID, int vID)
    Parameters
    Type Name Description
    Int32 tID
    Int32 vID
    Returns
    Type Description
    Boolean

    tri_is_boundary(Int32)

    Declaration
    protected bool tri_is_boundary(int tID)
    Parameters
    Type Name Description
    Int32 tID
    Returns
    Type Description
    Boolean

    TriangleIndices()

    Declaration
    public IEnumerable<int> TriangleIndices()
    Returns
    Type Description
    IEnumerable<Int32>

    Triangles()

    Declaration
    public IEnumerable<Index3i> Triangles()
    Returns
    Type Description
    IEnumerable<Index3i>

    TriTrianglesItr(Int32)

    Declaration
    public IEnumerable<int> TriTrianglesItr(int tID)
    Parameters
    Type Name Description
    Int32 tID
    Returns
    Type Description
    IEnumerable<Int32>

    vertex_is_boundary(Int32)

    Declaration
    public bool vertex_is_boundary(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    Boolean

    VertexIndices()

    Declaration
    public IEnumerable<int> VertexIndices()
    Returns
    Type Description
    IEnumerable<Int32>

    Vertices()

    Declaration
    public IEnumerable<Vector3d> Vertices()
    Returns
    Type Description
    IEnumerable<Vector3d>

    VtxAllBoundaryEdges(Int32, Int32[])

    e needs to be large enough (ie call VtxBoundaryEdges, or as large as max one-ring) returns count, ie number of elements of e that were filled

    Declaration
    public int VtxAllBoundaryEdges(int vID, int[] e)
    Parameters
    Type Name Description
    Int32 vID
    Int32[] e
    Returns
    Type Description
    Int32

    VtxBoundaryEdges(Int32)

    Returns count of boundary edges at vertex

    Declaration
    public int VtxBoundaryEdges(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    Int32

    VtxEdgesItr(Int32)

    Declaration
    public IEnumerable<int> VtxEdgesItr(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    IEnumerable<Int32>

    VtxTrianglesItr(Int32)

    Declaration
    public IEnumerable<int> VtxTrianglesItr(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    IEnumerable<Int32>

    VtxVerticesItr(Int32)

    Declaration
    public IEnumerable<int> VtxVerticesItr(int vID)
    Parameters
    Type Name Description
    Int32 vID
    Returns
    Type Description
    IEnumerable<Int32>

    Implements

    IDeformableMesh
    IMesh
    IPointSet
    In This Article
    Back to top ViRGIS VR GIS