Rhino C++ API  8.8
Public Member Functions | Static Public Member Functions | List of all members
ON_SubDManagedMeshFragment Class Reference

ON_SubDManagedMeshFragment is a legacy class that should not be used. More...

#include <opennurbs_subd.h>

Inheritance diagram for ON_SubDManagedMeshFragment:
ON_SubDMeshFragment

Public Member Functions

 ON_SubDManagedMeshFragment () ON_NOEXCEPT
 
 ON_SubDManagedMeshFragment (const ON_SubDManagedMeshFragment &) ON_NOEXCEPT
 
 ~ON_SubDManagedMeshFragment () ON_NOEXCEPT
 
void Clear () ON_NOEXCEPT
 
void Destroy () ON_NOEXCEPT
 
ON_SubDManagedMeshFragmentoperator= (const ON_SubDManagedMeshFragment &) ON_NOEXCEPT
 
bool ReserveCapacity (unsigned int mesh_density) ON_NOEXCEPT
 
- Public Member Functions inherited from ON_SubDMeshFragment
const ON_BoundingBox BoundingBox (ON_SubDComponentLocation subd_appearance) const
 
const ON_Plane CenterFrame () const
 
const ON_3dVector CenterNormal () const
 
const ON_3dPoint CenterPoint () const
 
const ON_3dPoint CenterTextureCoordinate () const
 
void Clear () ON_NOEXCEPT
 Clear all information except the memory management inforation. More...
 
void ClearColors () const
 
void ClearControlNetQuad ()
 
void ClearCurvatures () const
 
void ClearPackRect ()
 
void ClearSurfaceBoundingBox ()
 
void ClearTextureCoordinates () const
 
const ON_ColorColorArray (ON_SubDComponentLocation subd_appearance) const
 
unsigned ColorArrayCount (ON_SubDComponentLocation subd_appearance) const
 
size_t ColorArrayStride (ON_SubDComponentLocation subd_appearance) const
 
unsigned int ColorCapacity () const
 
unsigned int ColorCount () const
 
bool ColorsExistForExperts () const
 
const ON_BoundingBox ControlNetQuadBoundingBox () const
 
const ON_SubDMeshFragment ControlNetQuadFragmentForExperts () const
 
const ON_3dPoint ControlNetQuadPoint (bool bGridOrder, unsigned point_index) const
 
bool CopyFrom (const ON_SubDMeshFragment &src_fragment)
 
bool CopyFrom (const ON_SubDMeshFragment &src_fragment, unsigned int display_density)
 
const ON_Color CornerColor (unsigned int grid_corner_index) const
 
const ON_SurfaceCurvature CornerCurvature (unsigned int grid_corner_index) const
 
const ON_Plane CornerFrame (unsigned int grid_corner_index) const
 
const ON_3dVector CornerNormal (unsigned int grid_corner_index) const
 
const ON_3dPoint CornerPoint (unsigned int grid_corner_index) const
 
const ON_SurfaceCurvatureCurvatureArray (ON_SubDComponentLocation subd_appearance) const
 
unsigned CurvatureArrayCount (ON_SubDComponentLocation subd_appearance) const
 
size_t CurvatureArrayStride (ON_SubDComponentLocation subd_appearance) const
 
unsigned int CurvatureCapacity () const
 
unsigned int CurvatureCount () const
 
bool CurvaturesExistForExperts () const
 
bool DeleteManagedArrays ()
 
void Dump (ON_TextLog &text_log) const
 
unsigned int FaceCornerIndex () const
 
unsigned int FaceFragmentCount () const
 
const ON_SubDMeshFragmentFirstFaceFragment () const
 
bool GetControlNetQuad (bool bGridOrder, ON_3dPoint quad_points[4], ON_3dVector &quad_normal) const
 
unsigned int GetFaceFragments (const ON_SubDMeshFragment **fragments, size_t fragments_capacity) const
 
unsigned int GetFaceFragments (ON_SimpleArray< const ON_SubDMeshFragment * > &fragments) const
 
unsigned GetNormalCurvatures (const unsigned sample_count, const unsigned comb_count_params, const bool get_first_comb, const bool getKu, const bool getKv, ON_SimpleArray< ON_3dPoint > *P, ON_SimpleArray< ON_3dVector > *Kuv) const
 
bool GetTextureCoordinteCorners (bool bGridOrder, ON_3dPoint texture_coordinate_corners[4]) const
 
const ON_SubDMeshFragmentGridGrid (ON_SubDComponentLocation subd_appearance) const
 
const bool HasValidPointAndNormalGrid () const
 
bool InterlacedArrays () const
 True if the memory for points, normals, textures, colors, and curvatures is interlaced. More...
 
bool IsFaceCornerFragment () const
 
bool IsFullFaceFragment () const
 
const ON_SubDMeshFragmentLastFaceFragment () const
 
bool ManagedArrays () const
 
const ON_SubDMeshFragmentNextFaceFragment (bool bReturnFirstFromLast) const
 
const double * NormalArray (ON_SubDComponentLocation subd_appearance) const
 
unsigned NormalArrayCount (ON_SubDComponentLocation subd_appearance) const
 
size_t NormalArrayStride (ON_SubDComponentLocation subd_appearance) const
 
unsigned int NormalCapacity () const
 
unsigned int NormalCount () const
 
const ON_2dPoint PackRectCenter () const
 
const ON_2dPoint PackRectCorner (unsigned int grid_corner_index) const
 
const double * PointArray (ON_SubDComponentLocation subd_appearance) const
 
unsigned PointArrayCount (ON_SubDComponentLocation subd_appearance) const
 
size_t PointArrayStride (ON_SubDComponentLocation subd_appearance) const
 
unsigned int PointCapacity () const
 
unsigned int PointCount () const
 
const ON_SubDMeshFragmentPreviousFaceFragment (bool bReturnLastFromFirstFirst) const
 
bool ReserveManagedVertexCapacity (size_t vertex_capacity)
 
bool SetColors (ON_Color color) const
 
void SetColorsExistForExperts (bool bSetColorsExist) const
 
bool SetColorsFromCallback (const ON_MappingTag &fragment_colors_mapping_tag, const ON_SubD &subd, ON__UINT_PTR callback_context, const ON_Color(*color_callback)(ON__UINT_PTR callback_context, const ON_MappingTag &mapping_tag, const ON_SubD &subd, ON_SubDComponentPtr cptr, const ON_3dPoint &P, const ON_3dVector &N, const ON_3dPoint &T, const ON_SurfaceCurvature &K)) const
 
void SetControlNetQuad (bool bGridOrder, const ON_3dPoint quad_points[4], ON_3dVector quad_normal)
 
bool SetCurvatures (bool bLazy) const
 
void SetCurvaturesExistForExperts (bool bSetCurvaturesExist) const
 
void SetNgonFaceFragmentPackRectCorners (bool bGridOrder, const ON_2dPoint face_pack_rect_corners[4], ON_2dVector face_pack_rect_size, ON_2udex ngon_grid_size, ON_2dVector ngon_sub_pack_rect_size, ON_2dVector ngon_sub_pack_rect_delta)
 
void SetNgonFaceFragmentTextureCoordinateCorners (bool bGridOrder, const ON_3dPoint face_texture_coordinate_corners[4], ON_2dVector face_pack_rect_size, ON_2udex ngon_grid_size, ON_2dVector ngon_sub_pack_rect_size, ON_2dVector ngon_sub_pack_rect_delta, bool bSetTextureCoordinates) const
 
void SetPackedTextureCoordinates () const
 
void SetPackRectCornersForExperts (bool bGridOrder, const ON_2dPoint fragment_pack_rect_corners[4])
 
void SetQuadOr3gonFaceFragmentPackRectCorners (bool bGridOrder, const ON_2dPoint face_pack_rect_corners[4])
 
void SetQuadOr3gonFaceFragmentTextureCoordinateCorners (bool bGridOrder, const ON_3dPoint face_texture_coordinate_corners[4], bool bSetTextureCoordinates) const
 
void SetTextureCoordinateCornersForExperts (bool bGridOrder, const ON_3dPoint fragment_texture_coordinate_corners[4], bool bSetTextureCoordinates) const
 
void SetTextureCoordinatesExistForExperts (bool bTextureCoordinatesExist) const
 
void SetTextureCoordinatesFromCorners () const
 
bool SetUnmanagedVertexCapacityForExperts (size_t vertex_capacity)
 
void SetUnpackedTextureCoordinates () const
 
bool SetVertexCount (size_t vertex_count)
 
bool SetVertexTextureCoordinate (ON_2udex grid2dex, ON_3dPoint texture_coordinate) const
 
bool SetVertexTextureCoordinate (unsigned grid2dex_i, unsigned grid2dex_j, ON_3dPoint texture_coordinate) const
 
bool SetVertexTextureCoordinate (unsigned grid_point_index, ON_3dPoint texture_coordinate) const
 
const ON_Plane SideFrame (unsigned int grid_side_index) const
 
const ON_3dVector SideNormal (unsigned int grid_side_index) const
 
const ON_3dPoint SidePoint (unsigned int grid_side_index) const
 
ON_ComponentStatus Status () const
 
const class ON_SubDEdgeSubDEdge (unsigned int grid_side_index) const
 
const class ON_SubDEdgePtr SubDEdgePtr (unsigned int grid_side_index) const
 
const class ON_SubDFaceSubDFace () const
 
const class ON_SubDVertexSubDVertex (unsigned int grid_corner_index) const
 
const class ON_SubDVertexPtr SubDVertexPtr (unsigned int grid_corner_index) const
 
const ON_BoundingBox SurfaceBoundingBox () const
 
const double * TextureCoordinateArray (ON_SubDComponentLocation subd_appearance) const
 
unsigned TextureCoordinateArrayCount (ON_SubDComponentLocation subd_appearance) const
 
size_t TextureCoordinateArrayStride (ON_SubDComponentLocation subd_appearance) const
 
unsigned int TextureCoordinateCapacity () const
 
const ON_3dPoint TextureCoordinateCorner (unsigned int grid_corner_index) const
 
unsigned int TextureCoordinateCount () const
 
bool TextureCoordinatesExistForExperts () const
 
bool Transform (bool bKeepTextures, bool bKeepCurvatures, bool bKeepColors, const ON_Xform &xform)
 This version transforms the points and normals and attempts possible transformations to the curvatures, texture coordinates and colors, if they are kept: More...
 
bool Transform (bool bKeepTextures, bool bKeepCurvatures, bool bKeepColors, const ON_Xform &xform, const ON_Xform &xformNormals, const ON_Xform &xformTextures, const ON_Xform &xformCurvatures, const ON_Xform &xformColors)
 This version transforms the points, normals, curvatures, texture coordinates, and colors, if they are kept. More...
 
bool Transform (const ON_Xform &xform)
 This simple version transforms the points and normals and attempts possible transformations to the curvatures, texture coordinates and colors: More...
 
bool UnmanagedArrays () const
 
void UnsetControlNetQuad ()
 
unsigned VertexCapacity () const
 
const ON_Color VertexColor (ON_2udex grid2dex) const
 
const ON_Color VertexColor (unsigned grid2dex_i, unsigned grid2dex_j) const
 
const ON_Color VertexColor (unsigned grid_point_index) const
 
unsigned VertexCount () const
 
const ON_SurfaceCurvature VertexCurvature (ON_2udex grid2dex) const
 
const ON_SurfaceCurvature VertexCurvature (unsigned grid2dex_i, unsigned grid2dex_j) const
 
const ON_SurfaceCurvature VertexCurvature (unsigned grid_point_index) const
 
const ON_3dVector VertexNormal (ON_2udex grid2dex) const
 
const ON_3dVector VertexNormal (unsigned grid2dex_i, unsigned grid2dex_j) const
 
const ON_3dVector VertexNormal (unsigned grid_point_index) const
 
const ON_3dPoint VertexPoint (ON_2udex grid2dex) const
 
const ON_3dPoint VertexPoint (unsigned grid2dex_i, unsigned grid2dex_j) const
 
const ON_3dPoint VertexPoint (unsigned grid_point_index) const
 
const ON_SubDFaceParameter VertexSubDFaceParameter (ON_2udex grid2dex) const
 Get the SubD face evaluation parameter for the SubD surface point where this vertex is located. More...
 
const ON_SubDFaceParameter VertexSubDFaceParameter (unsigned grid2dex_i, unsigned grid2dex_j) const
 Get the SubD face evaluation parameter for the SubD surface point where this vertex is located. More...
 
const ON_SubDFaceParameter VertexSubDFaceParameter (unsigned grid_point_index) const
 Get the SubD face evaluation parameter for the SubD surface point where this vertex is located. More...
 
const ON_3dPoint VertexTextureCoordinate (ON_2udex grid2dex) const
 
const ON_3dPoint VertexTextureCoordinate (unsigned grid2dex_i, unsigned grid2dex_j) const
 
const ON_3dPoint VertexTextureCoordinate (unsigned grid_point_index) const
 
const ON_3dPoint VertexTextureCoordinateFromCorners (ON_2udex grid2dex) const
 
const ON_3dPoint VertexTextureCoordinateFromCorners (unsigned grid2dex_i, unsigned grid2dex_j) const
 
const ON_3dPoint VertexTextureCoordinateFromCorners (unsigned grid_point_index) const
 

Static Public Member Functions

static ON_SubDManagedMeshFragment Create (const ON_SubDMeshFragment &src) ON_NOEXCEPT
 
- Static Public Member Functions inherited from ON_SubDMeshFragment
static unsigned int DisplayDensityFromSideSegmentCount (unsigned int side_segment_count)
 
static unsigned int FaceCountFromDisplayDensity (unsigned int display_density)
 
static unsigned int FullFragmentMeshPointCountFromDensity (unsigned int mesh_density)
 
static unsigned int FullFragmentMeshQuadCountFromDensity (unsigned int mesh_density)
 
static bool Get3gonFaceFragmentPackRectCorners (bool bFaceGridOrder, const ON_2dPoint face_pack_rect_corners[4], unsigned int fragment_index, bool bFragmentGridOrder, ON_2dPoint fragment_pack_rect_corners[4])
 
static bool GetNgonFaceFragmentPackRectCorners (unsigned int ngon_edge_count, unsigned int ngon_fragment_index, bool bGridOrder, const ON_2dPoint face_pack_rect_corners[4], ON_2dVector face_pack_rect_size, ON_2udex ngon_grid_size, ON_2dVector ngon_sub_pack_rect_size, ON_2dVector ngon_sub_pack_rect_delta, ON_2dPoint fragment_pack_rect_corners[4])
 
static unsigned int HalfFragmentMeshPointCountFromDensity (unsigned int mesh_density)
 
static unsigned int HalfFragmentMeshQuadCountFromDensity (unsigned int mesh_density)
 
static unsigned int PointCountFromDisplayDensity (unsigned int display_density)
 
static unsigned int QuadGridPointCountFromSideCount (unsigned int side_segment_count)
 
static unsigned int QuadGridQuadCountFromSideCount (unsigned int side_segment_count)
 
static bool SealAdjacentSides (bool bTestNearEqual, bool bCopyNormals, const ON_SubDMeshFragment &src_fragment, unsigned int i0, unsigned int i1, ON_SubDMeshFragment &dst_fragment, unsigned int j0, unsigned int j1)
 
static bool SealNormals (bool bTestNearEqual, const double *src, double *dst)
 
static bool SealPoints (bool bTestNearEqual, const double *src, double *dst)
 
static unsigned int SidePointCountFromSideCount (unsigned int side_segment_count)
 
static unsigned int SideSegmentCountFromDisplayDensity (unsigned int display_density)
 
static bool SideSegmentCountIsValid (unsigned int side_segment_count)
 
static size_t SizeofFragment (unsigned int display_density)
 

Additional Inherited Members

- Public Types inherited from ON_SubDMeshFragment
enum  : unsigned int { MaximumSideSegmentCount = (1U << ON_SubDDisplayParameters::MaximumDensity) }
 
enum  : unsigned { MaximumVertexCount = 0x1000 }
 
- Public Attributes inherited from ON_SubDMeshFragment
const class ON_SubDFacem_face
 
unsigned short m_face_fragment_count
 Number of fragments that will be delivered for this face. More...
 
unsigned short m_face_fragment_index
 First fragment has index = 0. Last fragment has index = m_face_fragment_count-1. More...
 
unsigned short m_face_vertex_index [4]
 
ON_SubDMeshFragmentGrid m_grid
 Information to resolve m_P[], m_N[], and m_T[] into a grid of NxN quads. More...
 
double * m_N
 surface normals More...
 
size_t m_N_stride
 stride between normals for m_N[] as an array of 8 byte doubles (so 0 or >= 3) More...
 
ON_SubDMeshFragmentm_next_fragment
 
double * m_P
 surface points More...
 
size_t m_P_stride
 stride between points for m_P[] as an array of 8 byte doubles (so 0 or >= 3) More...
 
ON_SubDMeshFragmentm_prev_fragment
 
ON_BoundingBox m_surface_bbox
 3d bounding box of grid vertex points. More...
 
double * m_T
 
size_t m_T_stride
 stride between texture points for m_T[] as an array of 8 byte doubles (so 0 or >= 3) More...
 
- Static Public Attributes inherited from ON_SubDMeshFragment
static const ON_SubDMeshFragment Empty
 Every field of ON_SubDMeshFragment::Empty is zero. More...
 

Detailed Description

ON_SubDManagedMeshFragment is a legacy class that should not be used.

Constructor & Destructor Documentation

◆ ON_SubDManagedMeshFragment() [1/2]

ON_SubDManagedMeshFragment::ON_SubDManagedMeshFragment ( )

◆ ~ON_SubDManagedMeshFragment()

ON_SubDManagedMeshFragment::~ON_SubDManagedMeshFragment ( )

◆ ON_SubDManagedMeshFragment() [2/2]

ON_SubDManagedMeshFragment::ON_SubDManagedMeshFragment ( const ON_SubDManagedMeshFragment )

Member Function Documentation

◆ Clear()

void ON_SubDManagedMeshFragment::Clear ( )

◆ Create()

static ON_SubDManagedMeshFragment ON_SubDManagedMeshFragment::Create ( const ON_SubDMeshFragment src)
static

◆ Destroy()

void ON_SubDManagedMeshFragment::Destroy ( )

◆ operator=()

ON_SubDManagedMeshFragment& ON_SubDManagedMeshFragment::operator= ( const ON_SubDManagedMeshFragment )

◆ ReserveCapacity()

bool ON_SubDManagedMeshFragment::ReserveCapacity ( unsigned int  mesh_density)