Functions | |
HC_KEY | Insert_Infinite_Line (double xa, double ya, double za, double xb, double yb, double zb) |
void | DInsert_Infinite_Line (double xa, double ya, double za, double xb, double yb, double zb) |
void | Edit_Infinite_Line (HC_KEY key, double xa, double ya, double za, double xb, double yb, double zb) |
void | DEdit_Infinite_Line (HC_KEY key, double xa, double ya, double za, double xb, double yb, double zb) |
HC_KEY Insert_Infinite_Line | ( | double | xa, |
double | ya, | ||
double | za, | ||
double | xb, | ||
double | yb, | ||
double | zb | ||
) |
Adds an infinitely long line to the currently open segment.
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. |
Allows the user to insert an infinitely long line segment into the graphics database. At draw time, HOOPS 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.
If you only work in two dimensions, specify za and zb as zero.
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_Line.
void DInsert_Infinite_Line | ( | double | xa, |
double | ya, | ||
double | za, | ||
double | xb, | ||
double | yb, | ||
double | zb | ||
) |
Similar to Insert_Infinite_Line() but accepts parameters of type double for increased precision. Unlike Insert_Infinite_Line, the parameters are not truncated.
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. |
No additional details. See Insert_Infinite_Line().
void Edit_Infinite_Line | ( | HC_KEY | key, |
double | xa, | ||
double | ya, | ||
double | za, | ||
double | xb, | ||
double | yb, | ||
double | zb | ||
) |
Modifies an existing infinite line.
key | - Key to the infinite line 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. |
No additional details. See Insert_Infinite_Line().
void DEdit_Infinite_Line | ( | HC_KEY | key, |
double | xa, | ||
double | ya, | ||
double | za, | ||
double | xb, | ||
double | yb, | ||
double | zb | ||
) |
Similar to Edit_Infinite_Line(), but operates on double-precision data.
key | - Key to the infinite line 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. |