Functions | |
void | DEdit_Shell_Points (HC_KEY key, int offset, int ndelete, int insert, const HCD_POINT *points) |
Similar to Edit_Shell_Points(), but accepts double-precision values. More... | |
void | Edit_Shell_Points (HC_KEY key, int offset, int ndelete, int insert, const HC_POINT *points) |
Changes or deletes vertex points of a previously declared shell, or adds new points. More... | |
Detailed Description
Function Documentation
◆ DEdit_Shell_Points()
void DEdit_Shell_Points | ( | HC_KEY | key, |
int | offset, | ||
int | ndelete, | ||
int | insert, | ||
const HCD_POINT * | points | ||
) |
Similar to Edit_Shell_Points(), but accepts double-precision values.
- Parameters
-
key - The unique identifier returned by a previous call to DInsert_Shell() . offset - Number of the point in the original shell definition just before which to start editing. "0" is the first. If specified as "-1", editing starts after the old final point. ndelete - Number of points to delete. insert - The number of points to be inserted. points - Vector of x-y-z triplets to insert. (A simple N x 3 array may also be used.) Passed by reference always.
DETAILS
No additional details. See Edit_Shell_Points().
◆ Edit_Shell_Points()
void Edit_Shell_Points | ( | HC_KEY | key, |
int | offset, | ||
int | ndelete, | ||
int | insert, | ||
const HC_POINT * | points | ||
) |
Changes or deletes vertex points of a previously declared shell, or adds new points.
- Parameters
-
key - The unique identifier returned by a previous call to Insert_Shell() . offset - Number of the point in the original shell definition just before which to start editing. "0" is the first. If specified as "-1", editing starts after the old final point. ndelete - Number of points to delete. insert - The number of points to be inserted. points - Vector of x-y-z triplets to insert. (A simple N x 3 array may also be used.) Passed by reference always.
DETAILS
Edit_Shell_Points() lets you build a complex shell as it sits in the database. You don't have to delete and reinsert the shell from scratch. Edit_Shell_Points() provides this function for the points part of the original definition. A sister routine, Edit_Shell_Faces() , lets you change the face_list part of the original definition.
Edit_Shell_Points() changes the originally specified points vector (see Insert_Shell() ), starting at offset in the vector.
If ndelete is equal to insert and non-zero, that number of points are modified in place. The face connections and attributes of the points remain unchanged. Their x-y-z values are updated from the new points array.
If ndelete is non-zero (and not equal to insert) that number of points from the original list are discarded. The faces that referenced those points are dissolved and no longer exist. The face_list (see Show_Shell() ) is updated appropriately.
If insert is non-zero (and not equal to ndelete) that number of points from the new points vector are copied into the shell point list. The newly inserted points are not connected to any faces until you make an appropriate call to Edit_Shell_Faces() .
Finally, the points are renumbered to reflect any changes. The stored face_list (see Insert_Shell() ) will show the changed numbering.