47 if (
id[0] >= other.
id[0])
return true;
48 if (
id[0] == other.
id[0] &&
id[1] >= other.
id[1])
return true;
49 if (
id[0] == other.
id[0] &&
id[1] == other.
id[1] &&
id[2] >= other.
id[2])
return true;
50 if (
id[0] == other.
id[0] &&
id[1] == other.
id[1] &&
id[2] == other.
id[2] &&
id[3] >= other.
id[3])
return true;
56 if (
id[0] > other.
id[0])
return true;
57 if (
id[0] == other.
id[0] &&
id[1] > other.
id[1])
return true;
58 if (
id[0] == other.
id[0] &&
id[1] == other.
id[1] &&
id[2] > other.
id[2])
return true;
59 if (
id[0] == other.
id[0] &&
id[1] == other.
id[1] &&
id[2] == other.
id[2] &&
id[3] > other.
id[3])
return true;
65 if (
id[0] <= other.
id[0])
return true;
66 if (
id[0] == other.
id[0] &&
id[1] <= other.
id[1])
return true;
67 if (
id[0] == other.
id[0] &&
id[1] == other.
id[1] &&
id[2] <= other.
id[2])
return true;
68 if (
id[0] == other.
id[0] &&
id[1] == other.
id[1] &&
id[2] == other.
id[2] &&
id[3] <= other.
id[3])
return true;
73 if (
id[0] < other.
id[0])
return true;
74 if (
id[0] == other.
id[0] &&
id[1] < other.
id[1])
return true;
75 if (
id[0] == other.
id[0] &&
id[1] == other.
id[1] &&
id[2] < other.
id[2])
return true;
76 if (
id[0] == other.
id[0] &&
id[1] == other.
id[1] &&
id[2] == other.
id[2] &&
id[3] < other.
id[3])
return true;
81 return id[0] == other.
id[0] &&
id[1] == other.
id[1] &&
id[2] == other.
id[2] &&
id[3] == other.
id[3];
85 return id[0] != other.
id[0] ||
id[1] != other.
id[1] ||
id[2] != other.
id[2] ||
id[3] != other.
id[3];
92 v0 = v0 < v1 ? v0 : v1;
93 v1 = vt < v1 ? v1 : vt;
99 template<
typename TDataType>
103 typedef typename TDataType::Real
Real;
104 typedef typename TDataType::Coord
Coord;
DYN_FUNC QKey(PointType v0, PointType v1, PointType v2, PointType v3)
DYN_FUNC PointType operator[](unsigned int i)
DYN_FUNC bool operator>(const QKey &other) const
DYN_FUNC void swap(PointType &v0, PointType &v1)
DYN_FUNC bool operator!=(const QKey &other) const
DYN_FUNC bool operator<(const QKey &other) const
DYN_FUNC bool operator==(const QKey &other) const
DYN_FUNC bool operator>=(const QKey &other) const
DYN_FUNC bool operator<=(const QKey &other) const
void copyFrom(QuadSet< TDataType > &quadSet)
void updateTopology() override
void updateVertexNormal()
void setQuads(DArray< Quad > &quads)
void setQuads(std::vector< Quad > &quads)
DArray<::dyno::TopologyModule::Edg2Quad > mEdg2Quad
TopologyModule::Quad Quad
DArray< Quad > & getQuads()
DArrayList< int > & getVertex2Quads()
virtual void updateQuads()
DEF_ARRAY_OUT(Coord, VertexNormal, DeviceType::GPU, "")
void updateEdges() override
DArrayList< int > mVer2Quad
VectorND< PointType, 4 > Quad
This is an implementation of AdditiveCCD based on peridyno.
Array< T, DeviceType::GPU > DArray
ArrayList< ElementType, DeviceType::GPU > DArrayList