#include <osnaphit.h>
Public Member Functions |
|
CoreExport | HitMesh () |
CoreExport | ~HitMesh () |
CoreExport | HitMesh (const HitMesh &h) |
CoreExport | HitMesh (int n) |
Point3 | operator[] (int i) |
int | getNumVerts () |
CoreExport void | setNumVerts (int n) |
void | setVert (int i, const Point3 &xyz) |
Point3 & | getVert (int i) |
Point3 * | getVertPtr () |
CoreExport HitMesh | ( | ) |
CoreExport ~HitMesh | ( | ) |
CoreExport HitMesh | ( | int | n | ) |
Point3 operator[] | ( | int | i | ) | [inline] |
{return m_pverts[i];}
int getNumVerts | ( | void | ) | [inline] |
{return m_numverts;}
CoreExport void setNumVerts | ( | int | n | ) |
void setVert | ( | int | i, |
const Point3 & | xyz | ||
) | [inline] |
//add the hit points based on the active subsnaps if(GetActive(EDGE_SUB)) // The edge snapping is active and we have a hit on the edge defined by from and to. { HitMesh *hitmesh = new HitMesh(3); //Allocate one more than we need. hitmesh->setVert(0, from); hitmesh->setVert(1, to); float dap = Length(cursor - sf2); assert(Length(st2 - sf2)>=0.0f); float pct = (float)sqrt(fabs(dap*dap - distance*distance)) / Length(st2 - sf2); Point3 cand; float pctout = gw->interpWorld(&xyz[0],&xyz[1],pct,&cand); theman->RecordHit(new EdgeHit(cand, this, EDGE_SUB, hitmesh, ifrom, ito, pct)); }
{ m_pverts[i] = xyz; }
Point3& getVert | ( | int | i | ) | [inline] |
Point3* getVertPtr | ( | ) | [inline] |
{return m_pverts;}