Functions | |
void | DEdit_Infinite_Ray (HC_KEY key, double xa, double ya, double za, double xb, double yb, double zb) |
Similar to Edit_Infinite_Ray(), but operates on double-precision data. More... | |
void | DInsert_Infinite_Ray (double xa, double ya, double za, double xb, double yb, double zb) |
Similar to Insert_Infinite_Ray() but accepts parameters of type double for increased precision. Unlike Insert_Infinite_Ray, the parameters are not truncated. More... | |
void | Edit_Infinite_Ray (HC_KEY key, double xa, double ya, double za, double xb, double yb, double zb) |
Modifies an existing infinite ray. More... | |
HC_KEY | Insert_Infinite_Ray (double xa, double ya, double za, double xb, double yb, double zb) |
Adds an infinitely long line to the currently open segment. More... | |
Detailed Description
Function Documentation
◆ DEdit_Infinite_Ray()
void DEdit_Infinite_Ray | ( | HC_KEY | key, |
double | xa, | ||
double | ya, | ||
double | za, | ||
double | xb, | ||
double | yb, | ||
double | zb | ||
) |
Similar to Edit_Infinite_Ray(), but operates on double-precision data.
- Parameters
-
key - Key to the infinite ray that is to be modified. xa - new x-coordinate for one end of the line segment. ya - new y-coordinate for one end of the line segment. za - new z-coordinate for one end of the line segment. xb - new x-coordinate for other end of the line segment. yb - new y-coordinate for other end of the line segment. zb - new z-coordinate for other end of the line segment.
◆ DInsert_Infinite_Ray()
void DInsert_Infinite_Ray | ( | double | xa, |
double | ya, | ||
double | za, | ||
double | xb, | ||
double | yb, | ||
double | zb | ||
) |
Similar to Insert_Infinite_Ray() but accepts parameters of type double for increased precision. Unlike Insert_Infinite_Ray, the parameters are not truncated.
- Parameters
-
xa - x-coordinate for one end of the line segment. ya - y-coordinate for one end of the line segment. za - z-coordinate for one end of the line segment. xb - x-coordinate for other end of the line segment. yb - y-coordinate for other end of the line segment. zb - z-coordinate for other end of the line segment.
◆ Edit_Infinite_Ray()
void Edit_Infinite_Ray | ( | HC_KEY | key, |
double | xa, | ||
double | ya, | ||
double | za, | ||
double | xb, | ||
double | yb, | ||
double | zb | ||
) |
Modifies an existing infinite ray.
- Parameters
-
key - Key to the infinite ray that is to be modified. xa - new x-coordinate for one end of the line segment. ya - new y-coordinate for one end of the line segment. za - new z-coordinate for one end of the line segment. xb - new x-coordinate for other end of the line segment. yb - new y-coordinate for other end of the line segment. zb - new z-coordinate for other end of the line segment.
DETAILS
No additional details. See Insert_Infinite_Ray().
NOTES
RESTRICTIONS
◆ Insert_Infinite_Ray()
HC_KEY Insert_Infinite_Ray | ( | double | xa, |
double | ya, | ||
double | za, | ||
double | xb, | ||
double | yb, | ||
double | zb | ||
) |
Adds an infinitely long line to the currently open segment.
- Parameters
-
xa - x-coordinate for one end of the line segment. ya - y-coordinate for one end of the line segment. za - z-coordinate for one end of the line segment. xb - x-coordinate for other end of the line segment. yb - y-coordinate for other end of the line segment. zb - z-coordinate for other end of the line segment.
- Returns
- The key to the inserted geometry, or -1 if an error occurred.
DETAILS
Allows the user to insert a line that is infinitely long in one directiona The line starts at (xa, ya, za) and passes through (xb, yb, yz) to infinity. At draw time, HOOPS Visualize will clip this line to ensure that it is drawn with minimal cost, and that it spans completely across the window into which it is drawn.
NOTES
If you only work in two dimensions, specify za and zb as zero.
Infinite rays, like infinite lines, are considered as unbounded geometry and therefore will be ignored for bounding calculations.
This function's double parameters are internally truncated to float. If you require extra precision, use this function's double-precision variant, DInsert_Infinite_Ray.