DATAKIT SDK  V2026.2
str_feat_dtk.hpp
Go to the documentation of this file.
1 /**********************************************************
2 STR_FEAT.H
3 ***********************************************************/
4 #ifndef _STR_FEAT_DTK_HPP_
5 #define _STR_FEAT_DTK_HPP_
6 
7 /************************************
8 * TYPES ENUMERES *
9 *************************************/
10 
11 #include "util/util_stl_dtk.hpp"
12 #include "util/util_ent_dtk.hpp"
14 #include "util/dtk_maindoc.hpp"
15 
16 typedef struct cartesian_point_def Cartesian_point;
17 
18 int CreateFeatNodeConnectorFromGeomIDs (const Dtk_tab <Dtk_ID> &inListOfGeomIDs, Dtk_NodeConnectorPtr & outNodeConnector);
19 
20 /* index for param tabs */
21 #define IND_LENGTH 0
22 #define IND_PITCH 0
23 #define IND_ANGLE 0
24 #define IND_LENGTH1 1
25 #define IND_LENGTH2 2
26 #define IND_DEPTH 1
27 #define IND_DIAMETER 2
28 #define IND_INSTANCES 1
29 #define IND_SPACING 2
30 
31 typedef enum DTK_BOOLEAN_TYPE {
40 
41 typedef enum DTK_PRISM_TYPE {
42 
48 
49 typedef enum DTK_LOFT_TYPE {
50 
55 
56 
57 typedef enum {
62 
63 typedef enum {
68 
69 
70 typedef enum DTK_BODY_TYPE {
71 
76 
77 
78 typedef enum {
87 
88 typedef enum {
90  VAR_RADIUS/*
91  FACE_FACE,
92  TRITANGENT*/,
95 
96 
97 
98 typedef enum {
99  FLAT = 0,
104 
105 typedef enum {
106  SIMPLE = 0,
110  COUNTER_DRILLED,//when Sunk and Bore have the same diameter. Catia v5 specific.
111  COUNTER_DRILLED_2,//when Sunk and Bore have two different diameters.Needed for Pro/E.
114 
115 typedef enum {
119 
120 typedef enum {
125 
126 
127 typedef enum {
128  CUBIC = 0,
132 
133 typedef enum {
134  TANGENCY = 0,
138 
139 typedef enum {
145 
146 typedef enum {
152 
153 
154 typedef enum {
160 
161 
162 typedef enum {
165  REFLECT_LINE, // Draft with a reflect line instead of the neutral element
166  ADVANCED_DRAFT, // The advanced draft containing a draft (standard or reflect line ) with possibilities of two sides support
169 
170 typedef enum {
175 
176 
177 typedef enum {
178  CONE = 0,
182 
183 typedef enum {
189 
190 typedef enum {
195 
196 typedef enum {
197  DTK_ROOT, // The root node which allow the entry for parsing the whole tree
198  DTK_COMPLEX_FEATURE, // This is a non terminal node as a body composed of multiple features, or a boolean operation
199  DTK_SIMPLE_FEATURE, // This is the terminal node which consists of the simple feature which couldn't have children
202 
203 
204 typedef enum {
212 
213 
214 typedef enum {
220 
221 typedef enum {
227 
228 typedef enum {
229  DTK_FROM_SIDE, // Raidisseur Simple
230  DTK_FROM_TOP, // Raidisseur en Reseau
233 
234 
235 typedef enum {
243 
244 
245 typedef enum {
252 
253 typedef enum {
267  DTK_PIPE_SPHERICAL_TERMINATOR, // From CATIA V4 only
268  DTK_PIPE_EXCENTRIC_CONE // from CATIA V4 only
270 
271 typedef enum {
273  DTK_SECTION_ROUND, // Defined with a Diameter
274  DTK_SECTION_RECTANGULAR, // Defined with a Height and Width
275  DTK_SECTION_FLAT_OVAL, // Defined with a Height and Width
276  DTK_SECTION_RADIUS_CORNER, // Defined with a Height, Width and Radius Corner
277  DTK_SECTION_DOUBLE_RIDGE // Defined with a Height and Width
279 
280 typedef enum {
282  DTK_THREAD_TAP, // Define a Tap
283  DTK_THREAD_THREAD, // Define a Thread
285 
286 typedef enum {
287  DTK_THREAD_DIMENSION = 0, // User defined depth value
288  DTK_THREAD_SUPPORT_DEPTH, // Thread Depth is of the same of its support (hole, cylinder...)
289  DTK_THREAD_UP_TO_PLANE, // The thread limit is defined according to a plane. Get the plane reference using get_thread_limit()
291 
292 
293 
294 /**@brief Feature types */
322  // SURFACIQUES
325  // BOOL
333  // NEW
346 
348 
349  // Feat Surfacique
351 
352  // Corps (Solide, Surfacique)
356 
357  //Solides Importes
359 
360  //General Sheet Metal Type
364 
368 
369  //user defined
371 
372  //Technological Result Hole
374 
375  //Technological Result Thread
377 
378  //Piping and Tubing
380 
381  //Spot Point
383 
384 
385  //Composite
394 
404 
405 
406 };
407 
408 /**@brief Surface Feature types */
410 {
412  // TODO: Complete the list of surface features defined in wireframe and surface module in catiaV5
413  // ex: EXTRUDE, REVOLVE, SPHERE, CYLINDER, OFFSET, SWEEP, FILL, MULTISECTION, BLEND,
414  // Operations: JOIN, HEALING, UNTRIm, ROTATE, etc...
415 };
416 
417 /**@brief Sheet Metal Feature types */
419 {
421 
422  //Sheet Metal Design Features
427 
432 
437 
440 
449 
453 
455 
458 
459  //Generative Sheet Metal Design Features
460  //DTK_FEAT_SHM_RECOGNIZE
463 
466 
472 
474 
475  //Aerospace Sheet Metal Design
479 };
480 
481 /// @cond NO_DOXYGEN_DOC
482 /************************************
483 * STRUCT AUXILIAIRES *
484 *************************************/
485 typedef struct tab_ID_def
486 {
487  int nb_IDs; /*nb de ID*/
488  long * IDs; /*tab_ID*/
489 }Tab_ID;
490 
491 typedef struct dtk_feat_geom_elt_def {
492 
493  Tab_ID * elts;
494  int nb_elts;
495 
496 } Dtk_feat_geom_elt;
497 
498 
499 class Dtk_feat;
501 
502 
503 /**
504 @brief Geometry
505 */
506 class Dtk_feat_geometry {
507 public:
508  Dtk_feat_geom_elt ** profiles;
509  int nb_profiles;
510 
511  /* 20040630 */
512  long nb_ids;
513  int _ToNodeID; //available only for Dtk_Component/Dtk_Node method, used to be stored in DtkNodeConnector
514  int _ToCompID; //available only for Dtk_Component/Dtk_Node method, used to be stored in DtkNodeConnector
515  Dtk_tab<Dtk_NodeConnectorPtr> _NodeConnectors;
516 
517  Dtk_feat_geometry ();
518  // Copy constructor
519  Dtk_feat_geometry (const Dtk_feat_geometry& );
520 
521  ~Dtk_feat_geometry ();
522 
523  //! \brief Returns the inner geometric ids.
524  //! \deprecated Use GetNodeConnectors (Dtk_tab<Dtk_NodeConnectorPtr> & outNodeConnector) const method instead.
525  //! \param [in/out]
526  //! \param [out] Dtk_feat_geometry
527  //! \return NOTOK | ISOK
528  //! \remark
529  SetAsDeprecated("Undefined", "Use GetNodeConnectors")
530  int get_ids (long **, int*);
531 
532  //! \brief Returns the inner geometric ids.
533  //! \deprecated Use GetNodeConnectors
534  SetAsDeprecated("Undefined", "Use GetNodeConnectors")
535  Dtk_tab<Dtk_Int32> GetAllGeomIds() const;
536 
537 
538 
539  //! \brief Returns the Node Connector to retrieve geometric entities using _ReadConnectedEntity.
540  //! \brief This method is available only for Dtk_Component/Dtk_Node based approach
541  //! \deprecated Use GetNodeConnectors (Dtk_tab<Dtk_NodeConnectorPtr> & outNodeConnector) const method instead.
542  //! \param [in/out]
543  //! \param [out] outNodeConnector
544  //! \return NOTOK | ISOK
545  //! \remark
546  int get_NodeConnector (Dtk_NodeConnectorPtr & outNodeConnector) const;
547 
548  //! \brief Returns the Node Connector to retrieve geometric entities
549  //! \param [out] outNodeConnector
550  //! \return dtkNoError if OK
551  Dtk_ErrorStatus GetNodeConnectors (Dtk_tab<Dtk_NodeConnectorPtr> & outNodeConnector) const;
552 
553  Dtk_ErrorStatus SetNodeConnectors (Dtk_tab<Dtk_NodeConnectorPtr> inTabConnectors);
554 
555 } ;
556 /// @endcond
557 
558 /**
559 @brief Feature Axis
560 */
562 
563 public :
567 public:
568 
569 
572 
573  //! \brief Returns origin.
574  //! \param [in/out] Dtk_pnt
575  //! \param [out] Dtk_pnt ( double[3] )
576  //! \return NOTOK | ISOK
577  //! \remark
578 
580  Dtk_pnt GetOrigin() const {return origin;}
581 
582  //! \brief Returns direction.
583 
584  //! \param [in/out] Dtk_dir
585  //! \param [out] Dtk_dir ( double[3] )
586  //! \return NOTOK | ISOK
587  //! \remark
588 
590  Dtk_dir GetDirection() const {return direction;}
591 
592  Dtk_bool IsReversed() const {return reverse;}
593 
594 } ;
595 
596 
598 {
599 public:
606 
607 } ;
608 
609 /**
610 @brief Limit Feature : Some features contain one or several limit components which describe how their own shape is limited.
611 
612 */
614 
615 
616 public:
617 
619  {
620  DEFAULT = 0,
621  LENGTH = 1,
622  UP_TO_NEXT = 2,
623  UP_TO_LAST = 3,
624  UP_TO_PLANE = 4,
625  UP_TO_SURFACE = 5,
626  UP_THRU_NEXT_LIMIT = 6,
627  BIDIRECTIONAL = 7,
628  NO_LIMIT_TYPE = 8,
629  BLIND = 1, //= LENGTH
630  };
631 
632 
634  double val; // length
635  Dtk_feat_geometry * reference_object;
636 
637 
639  Dtk_feat_limit(const Dtk_feat_limit& inFeatLimit);
641 
642  //! \brief Returns limit type.
643  //! \param [in/out]
644  //! \param [out] LIMIT_TYPE
645  //! \return NOTOK | ISOK
646  //! \remark
647 
650  LIMIT_TYPE GetType() const {return type;}
651 
652  //! \brief Returns limit length.
653  //! \param [in/out]
654  //! \param [out] length value
655  //! \return NOTOK | ISOK
656  //! \remark represents either an length value (length)
657 
658  int get_val (double *);
659  Dtk_Double64 GetVal() const {return val;}
660 
661 
662  //! \brief Returns the limit reference object if any.
663  //! \param [in/out]
664  //! \param [out] offset value
665  //! \return NOTOK | ISOK
666  //! \remark
667 
668  int get_reference_object (Dtk_feat_geometry **);
669  Dtk_feat_geometry *GetRefenceObject()const {return reference_object;}
670 
671 
672 
673 } ;
674 
675 
676 /**
677 @brief Face to thicken
678 */
680 public:
681 
682  Dtk_feat_geometry * face;
683  double thickness;
684 
685 
686 
687  //! \brief Constructor of Thickness Face Feature
688  //! \param [in/out]
689  //! \param [out] Allocated thickness face feature
690  //! \return
691  //! \remark
692 
694 
695 
696  //! \brief Destructor of a Thickness face feature
697  //! \param [in] Thickness Face feature to destruct
698  //! \param [in/out]
699  //! \param [out]
700  //! \return Free Thickness Face Feature
701  //! \remark
702 
704 
705 
706  //! \brief Get the face geometry of the feature Thickness Face
707  //! \param [in] Thickness face feature
708  //! \param [in/out]
709  //! \param [out] Dtk_feat_geometry
710  //! \return face geometry of Thickness Feature
711  //! \remark
712 
713  int get_face (Dtk_feat_geometry **);
714 
715 
716  //! \brief Get the thickness of the feature Thickness Face
717  //! \param [in] Thickness face feature
718  //! \param [in/out]
719  //! \param [out] double
720  //! \return Thickness value of Thickness Feature
721  //! \remark
722 
723  int get_thickness (double *);
724 
725 } ;
726 
727 
728 /**
729 @brief Thickness Feature
730 */
732 
733 public:
734  double thickThin1;
735  double thickThin2;
739 
742 
743  //! \brief Returns thickness.
744  //! \param [in/out]
745  //! \param [out] Bool
746  //! \return NOTOK | ISOK
747  //! \remark DTK_FALSE if no thickness, DTK_TRUE else
748 
749  int get_thick (Bool *);
750 
751  //! \brief Returns neutral fiber flag.
752  //! \param [in/out]
753  //! \param [out] Bool
754  //! \return NOTOK | ISOK
755  //! \remark DTK_TRUE : inner and outer thickness are equal, take thin1 value
756 
758 
759  //! \brief Returns inner thickness value.
760  //! \param [in/out]
761  //! \param [out] double
762  //! \return NOTOK | ISOK
763  //! \remark
764 
765  int get_thin1 (double *);
766 
767  //! \brief Returns outer thickness value.
768  //! \param [in/out]
769  //! \param [out] double
770  //! \return NOTOK | ISOK
771  //! \remark
772 
773  int get_thin2 (double *);
775 
776 } ;
777 
778 
779 /**
780 @brief Face to remove
781 */
783 public:
784 
785  Dtk_feat_geometry * face;
786 
789 
790 
791  //! \brief Constructor of Shell Face Feature
792  //! \param [in/out]
793  //! \param [out] Allocated shell face feature
794  //! \return
795  //! \remark
796 
798 
799  //! \brief Destructor of a shell face feature
800  //! \param [in] Shell Face feature to destruct
801  //! \param [in/out]
802  //! \param [out]
803  //! \return Free Shell Face Feature
804  //! \remark
805 
807 
808  //! \brief Get the face geometry of the feature Shell Face
809  //! \param [in] Shell face feature
810  //! \param [in/out]
811  //! \param [out] Dtk_feat_geometry
812  //! \return face geometry of Shell Feature
813  //! \remark
814 
815  int get_face (Dtk_feat_geometry **);
816 
817  //! \brief Get the inside thickness of the feature Shell Face
818  //! \param [in] Shell face feature
819  //! \param [in/out]
820  //! \param [out] double
821  //! \return Inside Thickness of Shell Feature
822  //! \remark
823 
824  int get_inside_thickness (double *);
825 
826  //! \brief Get the outside thickness of the feature Shell Face
827  //! \param [in] Shell face feature
828  //! \param [in/out]
829  //! \param [out] double
830  //! \return Outside Thickness of Shell Feature
831  //! \remark
832 
833  int get_outside_thickness (double *);
834 
835 
836 } ;
837 
838 
839 
840 /*
841 Tolerance set (value + tolerance min + tolerance max)
842 */
844 public :
845  double tol_inf;
846  double tol_sup;
847 
848  Dtk_Double64 GetSuperiorTolerance() const {return tol_sup;}
849  Dtk_Double64 GetInferiorTolerance() const {return tol_inf;}
850 
851 } ;
852 
853 
854 typedef double Dtk_counter_params [3]; /* angle, depth, diameter */
855 typedef double Dtk_hole_params[3]; /* angle, depth, diameter */
856 typedef double Dtk_chamfer_params[3]; /* angle, length1, length2 */
857 typedef double Dtk_thread_params [3]; /* pitch, depth, diameter */
858 
859 
860 /************************************
861 * FEATURES *
862 *************************************/
863 
864 /**
865 @brief Prism Feature : A Prism extrudes a profile along a specific direction. A Pad adds material, a Pocket removes material.
866 */
868 
869 public:
871  Dtk_feat_geometry * profiles;
875  int side;
881  char ** annotation;
882 
883 public :
884 
885 
886  //! \brief Constructor of Prism Feature
887  //! \param [in/out]
888  //! \param [out] Allocated prism feature
889  //! \return NOTOK if error, ISOK if ok
890  //! \remark
891 
892 
894 
895  //! \brief Destructor of a prism feature
896  //! \param [in] Prism feature to destruct
897  //! \param [in/out]
898  //! \param [out]
899  //! \return Free Prism Feature
900  //! \remark
901 
902 
904 
905  //! \brief Returns Prism type
906  //! \param [in] Prism Feature
907  //! \param [in/out]
908  //! \param [out] DTK_PRISM_TYPE
909  //! \return NOTOK if error, ISOK if ok
910  //! \remark
911 
912 
914 
915  //! \brief Tests whether the symmetrical extension is set or not.
916  //! \param [in] Prism Feature
917  //! \param [in/out]
918  //! \param [out] Boolean
919  //! \return NOTOK if error, ISOK if ok
920  //! \remark
921 
922 
923  int get_sym (Bool *);
924 
925  //! \brief Returns the closing side of the open profile (side flag).
926  //! \param [in] Prism Feature
927  //! \param [in/out]
928  //! \param [out] Flag
929  //! \return NOTOK if error, ISOK if ok
930  //! \remark When the profile is open, specifies which side of the profile will be used for closing (legal values = 1 for direct axis, -1 for indirect)
931 
932 
933  int get_inner_side (int *);
934 
935  //! \brief Returns the extrusion direction.
936  //! \param [in] Prism Feature
937  //! \param [in/out]
938  //! \param [out] DTK Axis
939  //! \return NOTOK if error, ISOK if ok
940  //! \remark
941 
942 
944 
945  //! \brief Tests whether the direction is opposite to the reference or not.
946  //! \param [in] Prism Feature
947  //! \param [in/out]
948  //! \param [out] Boolean
949  //! \return NOTOK if error, ISOK if ok
950  //! \remark
951 
952 
954 
955  //! \brief Returns the second limit feature.
956  //! \param [in] Prism Feature
957  //! \param [in/out]
958  //! \param [out] Second Limit Feature
959  //! \return NOTOK if error, ISOK if ok
960  //! \remark
961 
962 
964 
965  //! \brief Returns the first limit feature.
966  //! \param [in] Prism Feature
967  //! \param [in/out]
968  //! \param [out] Second Limit Feature
969  //! \return NOTOK if error, ISOK if ok
970  //! \remark
971 
972 
974 
975  //! \brief Returns the profile internal component.
976  //! \param [in] Prism Feature
977  //! \param [in/out]
978  //! \param [out] Profile geometry
979  //! \return NOTOK if error, ISOK if ok
980  //! \remark
981 
982 
983  int get_profiles (Dtk_feat_geometry **);
984 
985  //! \brief Returns thickness of a prism.
986  //! \param [in] Prism Feature
987  //! \param [in/out]
988  //! \param [out] Dtk_feat_thickness (the internal and external thickness)
989  //! \return NOTOK if error, ISOK if ok
990  //! \remark
991 
992 
994 };
995 
996 /**
997 @brief Revol Feature : A Revol extrudes a profile around an axis. The profile sketch must contain an axis used as the revolution axis. A Shaft adds material, a Groove removes material.
998 */
1000 
1001 public:
1002  Dtk_feat_geometry * profiles;
1005  double first_angle;
1006  double second_angle;
1007  int side;
1009 
1010 
1011 public:
1012 
1013 
1014  //! \brief Constructor of Revol Features
1015  //! \param [in/out]
1016  //! \param [out]
1017  //! \return Allocated Revol Feature
1018  //! \remark
1019 
1020 
1022 
1023  //! \brief Destructor of Revol Features
1024  //! \param [in] Revol feature to disallocate
1025  //! \param [in/out]
1026  //! \param [out]
1027  //! \return Disallocated revol feature
1028  //! \remark You don't have to test revol feature type
1029 
1030 
1032 
1033  //! \brief Returns revol type
1034  //! \param [in] Revol Feature
1035  //! \param [in/out]
1036  //! \param [out] DTK_REVOL_TYPE
1037  //! \return NOTOK if error, ISOK if ok
1038  //! \remark
1039 
1040 
1042 
1043  //! \brief Returns the second angle value.
1044  //! \param [in] Revol Feature
1045  //! \param [in/out]
1046  //! \param [out] Second Angle Value
1047  //! \return NOTOK if error, ISOK if ok
1048  //! \remark
1049 
1050 
1051  int get_start_angle (double *);
1052 
1053  //! \brief Returns the first angle value.
1054  //! \param [in] Revol Feature
1055  //! \param [in/out]
1056  //! \param [out] First Angle Value
1057  //! \return NOTOK if error, ISOK if ok
1058  //! \remark
1059 
1060 
1061  int get_end_angle (double *);
1062 
1063  //! \brief Returns the revolution axis.
1064  //! \param [in] Revol Feature
1065  //! \param [in/out]
1066  //! \param [out] Revolution Axis
1067  //! \return NOTOK if error, ISOK if ok
1068  //! \remark
1069 
1070 
1072 
1073  //! \brief Returns the profile internal component.
1074  //! \param [in] Revol Feature
1075  //! \param [in/out]
1076  //! \param [out] Profile feature
1077  //! \return NOTOK if error, ISOK if ok
1078  //! \remark
1079 
1080 
1081  int get_profiles (Dtk_feat_geometry **);
1082 
1083  //! \brief Returns the thickness feature.
1084  //! \param [in] Revol Feature
1085  //! \param [in/out]
1086  //! \param [out] Thickness Feature
1087  //! \return NOTOK if error, ISOK if ok
1088  //! \remark
1089 
1090 
1092 
1093  //! \brief Returns the closing side of the open profile (side flag).
1094  //! \param [in] Revol Feature
1095  //! \param [in/out]
1096  //! \param [out] Side flag
1097  //! \return NOTOK if error, ISOK if ok
1098  //! \remark When the profile is open, specifies which side of the profile will be used for closing (legal values = 1 for direct axis, -1 for indirect)
1099 
1100  int get_inner_side (int*);
1101 
1102 };
1103 
1104 
1105 /**
1106 @brief Chamfer ribbon
1107 */
1109 
1110 public:
1111 
1112  Dtk_feat_geometry ** objects;
1115 
1118 
1119  //! \brief Returns objects number for each ribbon
1120  //! \param [in] Ribbon
1121  //! \param [in/out]
1122  //! \param [out] int
1123  //! \return NOTOK if error, ISOK if ok
1124  //! \remark
1125 
1126 
1127  int get_nb_objects (int *);
1128 
1129  //! \brief Returns geometries objects fro each Ribbon
1130  //! \param [in] Ribbon
1131  //! \param [in/out]
1132  //! \param [out] Dtk_feat_geometry
1133  //! \return NOTOK if error, ISOK if ok
1134  //! \remark
1135 
1136 
1137  int get_objects (Dtk_feat_geometry ***);
1138 
1139  //! \brief Returns reverse value for a ribbon
1140  //! \param [in] Ribbon
1141  //! \param [in/out]
1142  //! \param [out] bool (DTK_TRUE if reversed ribbon, DTK_FALSE if not reversed ribbon)
1143  //! \return NOTOK if error, ISOK if ok
1144  //! \remark
1145 
1146 
1148 
1149 } ;
1150 
1151 
1152 /**
1153 @brief Chamfer feature
1154 */
1156 
1157 public:
1158 
1160 
1163 
1166 
1168 
1170 
1171  //! \brief Returns Chamfer ribbons number
1172  //! \param [in] Chamfer Feature
1173  //! \param [in/out]
1174  //! \param [out] int
1175  //! \return NOTOK if error, ISOK if ok
1176  //! \remark
1177 
1178 
1179  int get_nb_ribbons (int *);
1180 
1181  //! \brief Returns Chamfer ribbons
1182  //! \param [in] Chamfer Feature
1183  //! \param [in/out]
1184  //! \param [out] Dtk_feat_chamfer_ribbon
1185  //! \return NOTOK if error, ISOK if ok
1186  //! \remark
1187 
1188 
1190 
1191  //! \brief Returns Chamfer propagation
1192  //! \param [in] Chamfer Feature
1193  //! \param [in/out]
1194  //! \param [out] PROPAGATION_TYPE
1195  //! \return NOTOK if error, ISOK if ok
1196  //! \remark
1197 
1198 
1200 
1201  //! \brief Returns Chamfer type
1202  //! \param [in] Chamfer Feature
1203  //! \param [in/out]
1204  //! \param [out] CHAMFER_TYPE
1205  //! \return NOTOK if error, ISOK if ok
1206  //! \remark
1207 
1208 
1210 
1211  //! \brief Returns Chamfer Angle
1212  //! \param [in] Chamfer Feature
1213  //! \param [in/out]
1214  //! \param [out] double
1215 
1216  //! \return NOTOK if error, ISOK if ok
1217  //! \remark
1218 
1219 
1220  int get_angle (double *a);
1221 
1222  //! \brief Returns Chamfer Length1
1223  //! \param [in] Chamfer Feature
1224  //! \param [in/out]
1225  //! \param [out] double
1226 
1227  //! \return NOTOK if error, ISOK if ok
1228  //! \remark
1229 
1230 
1231  int get_length1 (double *a);
1232 
1233  //! \brief Returns Chamfer Length2
1234  //! \param [in] Chamfer Feature
1235  //! \param [in/out]
1236  //! \param [out] double
1237 
1238  //! \return NOTOK if error, ISOK if ok
1239  //! \remark
1240 
1241 
1242  int get_length2 (double *a);
1243 
1244 } ;
1245 
1246 /**
1247 @brief Feature Inner Thread
1248 */
1250 
1251 public:
1254 
1256  Dtk_feat_tolerance_set * tol_thread_params[3];
1257 
1261  DTK_THREAD_TYPE thread_type; //Thread or Tap
1262 
1263  DTK_THREAD_LIMIT_TYPE thread_limit_type; // Dimension, Support Depth, or Up to Plane
1264  Dtk_feat_geometry* thread_limit_reference; // refer to a plane; used only if thread limit type is "Up To Plane"
1265 
1266 
1267 public:
1268 
1269 
1270  //! \brief Constructor of Inner Thread Feature
1271  //! \param [in/out]
1272  //! \param [out] Allocated inner thread feature
1273  //! \return
1274  //! \remark Inner thread contains several threading parameters such as diameter, depth, pitch, type... It is used for inner thread of a hole (Dtk_feat_hole) and in a thread (Dtk_feat_thread)
1275 
1276 
1278 
1279  //! \brief Destructor of Inner Thread Feature
1280  //! \param [in/out]
1281  //! \param [out] Free Inner Thread feature
1282  //! \return
1283  //! \remark
1284 
1285 
1287 
1288  //! \brief Returns the thread diameter
1289  //! \param [in] Inner Thread feature
1290  //! \param [in/out]
1291  //! \param [out] Threading diameter
1292  //! \return NOTOK if error, ISOK if ok
1293  //! \remark
1294 
1295 
1296  int get_diameter (double *);
1297  Dtk_Double64 GetDiameter() const {return thread_params[IND_DIAMETER];}
1298 
1299  //! \brief Returns the thread diameter with tolerance values if any
1300  //! \param [in] Inner Thread feature
1301  //! \param [in/out]
1302  //! \param [out] Thread diameter & tolerances if any
1303  //! \return NOTOK if error, ISOK if ok
1304  //! \remark You have to test if there is a tolerance on the thread diameter with get_diameter_has_tol. In case of direct call and no tolerance set, you should obtain a NOTOK status
1305 
1306 
1307  int get_diameter_with_tol (double *, double *, double *);
1308  Dtk_feat_tolerance_set *GetDiameterTolerance() const {return tol_thread_params[IND_DIAMETER]; }
1309 
1310  //! \brief Tests whether there is a tolerance set on thread diameter
1311  //! \param [in] Inner Thread feature
1312  //! \param [in/out]
1313  //! \param [out] Bool
1314  //! \return NOTOK if error, ISOK if ok
1315  //! \remark
1316 
1317 
1319  Dtk_bool HasDiameterTolerance()const {return !(tol_thread_params[IND_DIAMETER] == NULL);}
1320 
1321 
1322  //! \brief Returns the thread depth
1323  //! \param [in] Inner Thread feature
1324  //! \param [in/out]
1325  //! \param [out] Thread depth
1326  //! \return NOTOK if error, ISOK if ok
1327  //! \remark
1328 
1329  int get_depth (double *);
1330  Dtk_Double64 GetDepth() const {return thread_params[IND_DEPTH];}
1331  //! \brief Returns the thread depth with tolerance values if any
1332  //! \param [in] Inner Thread feature
1333  //! \param [in/out]
1334  //! \param [out] Thread depth & tolerances if any
1335  //! \return NOTOK if error, ISOK if ok
1336  //! \remark You have to test if there is a tolerance on the thread depth with get_depth_has_tol. In case of direct call and no tolerance set, you should obtain a NOTOK status
1337 
1338  int get_depth_with_tol (double *, double *, double *);
1339  Dtk_feat_tolerance_set *GetDepthTolerance() const {return tol_thread_params[IND_DEPTH]; }
1340 
1341  //! \brief Tests whether there is a tolerance set on thread depth
1342  //! \param [in] Inner Thread feature
1343  //! \param [in/out]
1344  //! \param [out] Bool
1345  //! \return NOTOK if error, ISOK if ok
1346  //! \remark
1347 
1349  Dtk_bool HasDepthTolerance()const {return !(tol_thread_params[IND_DEPTH] == NULL);}
1350  //! \brief Returns the threading pitch
1351  //! \param [in] Inner Thread feature
1352  //! \param [in/out]
1353  //! \param [out] Thread pitch
1354  //! \return NOTOK if error, ISOK if ok
1355  //! \remark
1356 
1357  int get_pitch (double *);
1358  Dtk_Double64 GetPitch() const {return thread_params[0];}
1359 
1360  //! \brief Returns the thread pitch with tolerance values if any
1361  //! \param [in] Inner Thread feature
1362  //! \param [in/out]
1363  //! \param [out] Thread pitch & tolerances if any
1364  //! \return NOTOK if error, ISOK if ok
1365  //! \remark You have to test if there is a tolerance on the thread pitch with get_dtk_feat_inner_thread_pitch_has_tol. In case of direct call and no tolerance set, you should obtain a NOTOK status
1366 
1367  int get_pitch_with_tol (double *, double *, double *);
1368  Dtk_feat_tolerance_set *GetPitchTolerance() const {return tol_thread_params[0]; }
1369 
1370  //! \brief Tests whether there is a tolerance set on thread pitch
1371  //! \param [in] Inner Thread feature
1372  //! \param [in/out]
1373  //! \param [out] Bool
1374  //! \return NOTOK if error, ISOK if ok
1375  //! \remark
1376 
1378  Dtk_bool HasPitchTolerance()const {return !(tol_thread_params[IND_DEPTH] == NULL);}
1379 
1380  //! \brief Tests whether the thread is rigth-threaded
1381  //! \param [in] Inner Thread feature
1382  //! \param [in/out]
1383  //! \param [out] Bool (DTK_TRUE = right, DTK_FALSE = left)
1384  //! \return NOTOK if error, ISOK if ok
1385  //! \remark
1386 
1388  Dtk_bool IsRightThreaded() const {return right_threaded;}
1389  Dtk_bool IsNoStandardTable() const {return no_standard_table;}
1390 
1391 
1392  //! \brief Returns the thread standard definition type if any
1393  //! \param [in] Inner Thread feature
1394  //! \param [out] Thread definition type - must call delete[]
1395  //! \return NOTOK if error, ISOK if ok
1396  //! \remark "Metric_Thick_Pitch" | "Metric_Thin_Pitch"
1397  //! \deprecated Use GetDefinitionType()
1398  SetAsDeprecated("2024.2", "Use GetDefinitionType()")
1399  int get_def_type (wchar_t **);
1400  Dtk_string GetDefinitionType() const {return thread_definition_type; }
1401 
1402  //! \brief Returns the thread standard definition value if any
1403  //! \param [in] Inner Thread feature
1404  //! \param [out] Thread definition value - must call delete[]
1405  //! \return NOTOK if error, ISOK if ok
1406  //! \remark ex : "M8", "M12"...
1407  //! \deprecated Use GetDefinitionValue()
1408  SetAsDeprecated("2024.2", "Use GetDefinitionValue()")
1409  int get_def_value (wchar_t **);
1410  Dtk_string GetDefinitionValue() const {return thread_definition_value; }
1411 
1412  //! \brief Returns the thread type value
1413  //! \param [in] Inner Thread feature
1414  //! \param [in/out]
1415  //! \param [out] Thread definition type
1416  //! \return NOTOK if error, ISOK if ok
1417  //! \remark ex : "M8", "M12"...
1418 
1421  DTK_THREAD_TYPE GetType() const {return thread_type;}
1422 
1423 
1424  //! \brief Returns the thread limit type value
1425  //! \param [in] Inner Thread feature
1426  //! \param [in/out]
1427  //! \param [out] Thread limit type
1428  //! \return NOTOK if error, ISOK if ok
1429  //! \remark type : "Dimension", "Support Depth" or "Up To Plane"
1430 
1433  DTK_THREAD_LIMIT_TYPE GetLimitType() const {return thread_limit_type;}
1434 
1435  //! \brief Returns the thread limit reference plane if exists
1436  //! \param [in] Inner Thread feature
1437  //! \param [in/out]
1438  //! \param [out] Thread limit plane if exists or NULL
1439  //! \return NOTOK if error, ISOK if ok
1440  //! \remark Available only if thread limit type is "Up To Plane"
1441 
1442  int get_thread_limit_reference (Dtk_feat_geometry **);
1443  Dtk_feat_geometry *GetLimitReference() const {return thread_limit_reference;}
1444 
1445 } ;
1446 
1447 
1448 /**
1449 @brief Feature Thread (taraudage)
1450 */
1452 
1453 public:
1454 
1455  Dtk_feat_geometry * face_limit;
1456 
1457  Dtk_feat_geometry * support;
1458 
1463 
1465 
1467 
1468 public :
1469 
1470 
1471  //! \brief Constructor of Thread Feature
1472  //! \param [in/out]
1473  //! \param [out] Allocated thread feature
1474  //! \return
1475  //! \remark
1476 
1478 
1479  //! \brief Desstructor of Thread Feature
1480  //! \param [in/out]
1481  //! \param [out] Free Thread feature
1482  //! \return
1483  //! \remark
1484 
1486 
1487  //! \brief Returns the inner thread parameters
1488  //! \param [in] Thread feature
1489  //! \param [in/out]
1490  //! \param [out] Inner thread feature
1491  //! \return NOTOK if error, ISOK if ok
1492  //! \remark The inner thread contains several parameters such as thread diameter, depth, type... See Dtk_feat_inner_thread for more details.
1493 
1495  Dtk_feat_inner_thread *GetInnerThread()const{return inner_thread;}
1496 
1497  //! \brief Returns the thread support surface
1498  //! \param [in] Thread feature
1499  //! \param [in/out]
1500  //! \param [out] Support surface
1501  //! \return NOTOK if error, ISOK if ok
1502  //! \remark
1503 
1504  int get_support (Dtk_feat_geometry **);
1505  Dtk_feat_geometry *GetSupport()const{return support;}
1506 
1507 
1508  //! \brief Returns the thread support surface depth
1509  //! \param [in] Thread feature
1510  //! \param [in/out]
1511  //! \param [out] Support surface depth
1512  //! \return NOTOK if error, ISOK if ok
1513  //! \remark
1514 
1515  int get_support_depth (double *);
1516  Dtk_Double64 GetSupportDepth() const{return support_depth;}
1517 
1518  //! \brief Returns the thread support surface depth with tolerance values if any
1519  //! \param [in] Thread feature
1520  //! \param [in/out]
1521  //! \param [out] Support surface depth & tolerances if any
1522  //! \return NOTOK if error, ISOK if ok
1523  //! \remark You have to test if there is a tolerance on the support depth with get_depth_has_tol. In case of direct call and no tolerance set, you should obtain a NOTOK status
1524 
1525  int get_support_depth_with_tol (double *, double *, double *);
1526  Dtk_feat_tolerance_set *GetSupportDepthTolerance() const{return tol_support_depth;}
1527 
1528  //! \brief Tests whether there is a tolerance set on support depth
1529  //! \param [in] Thread feature
1530  //! \param [in/out]
1531  //! \param [out] Bool
1532  //! \return NOTOK if error, ISOK if ok
1533  //! \remark
1534 
1536  Dtk_bool HasSupportDepthTolerance() const{return !(tol_support_depth == NULL);}
1537 
1538  //! \brief Returns the thread support surface diameter
1539  //! \param [in] Thread feature
1540  //! \param [in/out]
1541  //! \param [out] Support surface diameter
1542  //! \return NOTOK if error, ISOK if ok
1543  //! \remark
1544 
1545  int get_support_diameter (double *);
1546  Dtk_Double64 GetSupportDiameter() const{return support_diameter;}
1547 
1548  //! \brief Returns the thread support surface diameter with tolerance values if any
1549  //! \param [in] Thread feature
1550  //! \param [in/out]
1551  //! \param [out] Support surface diameter & tolerances if any
1552  //! \return NOTOK if error, ISOK if ok
1553  //! \remark You have to test if there is a tolerance on the support diameter with get_diameter_has_tol. In case of direct call and no tolerance set, you should obtain a NOTOK status
1554 
1555  int get_support_diameter_with_tol (double *, double *, double *);
1556  Dtk_feat_tolerance_set *GetSupportDiameterTolerance() const{return tol_support_diameter;}
1557 
1558  //! \brief Tests whether there is a tolerance set on support diameter
1559  //! \param [in] Thread feature
1560  //! \param [in/out]
1561  //! \param [out] Bool
1562  //! \return NOTOK if error, ISOK if ok
1563  //! \remark
1564 
1566  Dtk_bool HasSupportDiameterTolerance() const{return !(tol_support_diameter == NULL);}
1567 
1568  //! \brief Returns thread limit surface
1569  //! \param [in] Thread feature
1570  //! \param [in/out]
1571  //! \param [out] Thread limit surface
1572  //! \return NOTOK if error, ISOK if ok
1573  //! \remark
1574 
1575  int get_limit (Dtk_feat_geometry **);
1576  Dtk_feat_geometry *GetLimit()const{return face_limit;}
1577 
1578  //! \brief Returns thread direction reversed
1579  //! \param [in] Thread feature
1580  //! \param [in/out]
1581  //! \param [out] Direction reversed flag
1582  //! \return NOTOK if error, ISOK if ok
1583  //! \remark
1584 
1586  Dtk_bool IsReversed()const{return direction_reversed;}
1587 
1588 } ;
1589 
1590 /* End Feature Thread */
1591 
1592 
1593 /**
1594 @brief Hole Feature : position, direction, type, diameter, anchorpoint of hole feature.
1595 */
1597 
1598 public:
1599 
1601  Dtk_feat_tolerance_set * tol_hole[3];
1607  Dtk_Double64 Sunk_diameter;//When type = COUNTER_DRILLED_2,find Bore diameter in counter_params[2] Needed for Pro/E
1608  Dtk_feat_tolerance_set * tol_counter[3];
1612  Dtk_feat_geometry * sketch;
1613  Dtk_feat_geometry * support;
1614  Dtk_feat_geometry * limit;
1615  Dtk_feat_geometry * direction;
1627 
1628 
1629 public :
1630 
1631 
1632  //! \brief Constructor of Hole Feature
1633  //! \param [in/out]
1634  //! \param [out] Allocated hole feature
1635  //! \return
1636  //! \remark
1637 
1639 
1640  //! \brief Destructor of a hole feature
1641  //! \param [in] Hole feature to destruct
1642  //! \param [in/out]
1643  //! \param [out] Free Hole Feature
1644  //! \return
1645  //! \remark
1646 
1648 
1649 
1650  //! \brief Gets the hole type
1651  //! \param [in] Hole feature
1652  //! \param [in/out]
1653  //! \param [out] Hole Type
1654  //! \return NOTOK if error, ISOK if ok
1655  //! \remark
1656 
1658  HOLE_TYPE GetType() const {return hole_type;}
1660 
1661  //! \brief Gets the hole anchor type if any
1662  //! \param [in] Hole feature
1663  //! \param [in/out]
1664  //! \param [out] Hole Anchor Type
1665  //! \return NOTOK if error, ISOK if ok
1666  //! \remark You should test hole type before
1667 
1670 
1671  //! \brief Gets the hole bottom type if any
1672  //! \param [in] Hole feature
1673  //! \param [in/out]
1674  //! \param [out] Hole Bottom Type :
1675  //! \return NOTOK if error, ISOK if ok
1676  //! \remark
1677 
1680 
1681  //! \brief Tests whether the hole is threaded or not
1682  //! \param [in] Hole feature
1683  //! \param [in/out]
1684  //! \param [out] Bool
1685  //! \return NOTOK if error, ISOK if ok
1686  //! \remark
1687 
1689  Dtk_bool IsThreaded()const {return hole_threaded;}
1690 
1691  //! \brief Returns the inner thread if any
1692  //! \param [in] Hole feature
1693  //! \param [in/out]
1694  //! \param [out] Inner Thread
1695  //! \return NOTOK if error, ISOK if ok
1696  //! \remark You should test if the hole is threaded before by get_threaded
1697 
1699  Dtk_feat_inner_thread *GetInnerThread() const {return thread;}
1700 
1701  Dtk_feat_geometry *GetSketch()const {return sketch;}
1702  Dtk_feat_geometry *GetSupport()const {return support;}
1703 
1704  //! \brief Returns the hole axis
1705  //! \param [in] Hole feature
1706  //! \param [in/out]
1707  //! \param [out] Axis
1708  //! \return NOTOK if error, ISOK if ok
1709  //! \remark
1710 
1712  Dtk_feat_axis *GetAxis() const {return axis;}
1713 
1714  //! \brief Returns the hole limit
1715  //! \param [in] Hole feature
1716  //! \param [in/out]
1717  //! \param [out] Hole limit
1718  //! \return NOTOK if error, ISOK if ok
1719  //! \remark
1720 
1722  Dtk_feat_limit *GetLimit() const {return hole_limit;}
1723 
1724  //! \brief Returns the hole diameter
1725  //! \param [in] Hole feature
1726  //! \param [in/out]
1727  //! \param [out] Hole diameter
1728  //! \return NOTOK if error, ISOK if ok
1729  //! \remark
1730 
1731  int get_diameter (double *);
1732  Dtk_Double64 GetDiameter() const {return hole_params[IND_DIAMETER];}
1733 
1734  //! \brief Gets the hole diameter with its tolerance value (inf value & sup value)
1735  //! \param [in] Hole feature
1736  //! \param [in/out]
1737  //! \param [out] Diameter, Inf Value, Sup Value
1738  //! \return NOTOK if error, ISOK if ok
1739  //! \remark You have to test if there is a tolerance on the diameter with get_diameter_has_tol. In case of direct call and no tolerance set, you should obtain a NOTOK status
1740 
1741  int get_diameter_with_tol (double *, double *, double *);
1743 
1744 
1745  //! \brief Tests whether there is a tolerance set on diameter
1746  //! \param [in] Hole feature
1747  //! \param [in/out]
1748  //! \param [out] Bool
1749  //! \return NOTOK if error, ISOK if ok
1750  //! \remark
1751 
1753  Dtk_bool HasDiameterTolerance()const {return !(tol_hole[IND_DIAMETER] == NULL);}
1754 
1755  //! \brief Returns the hole depth
1756  //! \param [in] Hole feature
1757  //! \param [in/out]
1758  //! \param [out] Hole depth
1759  //! \return NOTOK if error, ISOK if ok
1760  //! \remark
1761 
1762  int get_depth (double *);
1763  Dtk_Double64 GetDepth() const {return hole_params[IND_DEPTH];}
1764 
1765  //! \brief Gets the hole depth with its tolerance value (inf value & sup value)
1766  //! \param [in] Hole feature
1767  //! \param [in/out]
1768  //! \param [out] Depth, Inf Value, Sup Value
1769  //! \return NOTOK if error, ISOK if ok
1770  //! \remark You have to test if there is a tolerance on the depth with get_depth_has_tol. In case of direct call and no tolerance set, you should obtain a NOTOK status
1771 
1772  int get_depth_with_tol (double *, double *, double *);
1774 
1775 
1776  //! \brief Tests whether there is a tolerance set on depth
1777  //! \param [in] Hole feature
1778  //! \param [in/out]
1779  //! \param [out] Bool
1780  //! \return NOTOK if error, ISOK if ok
1781  //! \remark
1782 
1784  Dtk_bool HasDepthTolerance()const {return !(tol_hole[IND_DEPTH] == NULL);}
1785 
1786  //! \brief Returns the hole bottom angle
1787  //! \param [in] Hole feature
1788  //! \param [in/out]
1789  //! \param [out] Hole bottom angle
1790  //! \return NOTOK if error, ISOK if ok
1791  //! \remark Used for V-Bottom holes. In other cases, you shoud obtain a 0.0 value. You should test hole type before.
1792 
1793  int get_bottom_angle (double *);
1794  Dtk_Double64 GetBottomAngle() const {return hole_params[IND_ANGLE];}
1795 
1796 
1797  //! \brief Gets the hole bottom angle with its tolerance value (inf value & sup value)
1798  //! \param [in] Hole feature
1799  //! \param [in/out]
1800  //! \param [out] Bottom Angle, Inf Value, Sup Value
1801  //! \return NOTOK if error, ISOK if ok
1802  //! \remark You have to test if there is a tolerance on the bottom angle with get_bottom_angle_has_tol. In case of direct call and no tolerance set, you should obtain a NOTOK status
1803 
1804  int get_bottom_angle_with_tol (double *, double *, double *);
1806 
1807  //! \brief Tests whether there is a tolerance set on bottom angle
1808  //! \param [in] Hole feature
1809  //! \param [in/out]
1810  //! \param [out] Bool
1811  //! \return NOTOK if error, ISOK if ok
1812  //! \remark
1813 
1815  Dtk_bool HasBottomAngleTolerance()const {return !(tol_hole[IND_ANGLE] == NULL);}
1816 
1817  //! \brief Returns the hole counter diameter
1818  //! \param [in] Hole feature
1819  //! \param [in/out]
1820  //! \param [out] Hole counter diameter
1821  //! \return NOTOK if error, ISOK if ok
1822  //! \remark
1823 
1824  int get_counter_diameter ( double *);
1825  Dtk_Double64 GetCounterDiameter() const {return counter_params[IND_DIAMETER];}
1826 
1827 
1828  //! \brief Returns the hole counter diameter
1829  //! \param [in] Hole feature
1830  //! \param [in/out]
1831  //! \param [out] Hole sunk diameter (when type is COUNTER_DRILLED_2)
1832  //! \return NOTOK if error, ISOK if ok
1833  //! \remark Find Bore diameter in counter_params[2] (get_counter_diameter)
1834 
1835  int get_sunk_diameter ( double *);
1836  Dtk_Double64 GetSunkDiameter() const {return Sunk_diameter;}
1837 
1838  //! \brief Gets the hole counter diameter with its tolerance value (inf value & sup value)
1839  //! \param [in] Hole feature
1840  //! \param [in/out]
1841  //! \param [out] Counter Diameter, Inf Value, Sup Value
1842  //! \return NOTOK if error, ISOK if ok
1843  //! \remark You have to test if there is a tolerance on the counter diameter with get_dtk_feat_hole_counter_diameter_has_tol. In case of direct call and no tolerance set, you should obtain a NOTOK status
1844 
1845  int get_counter_diameter_with_tol ( double *, double *, double *);
1847 
1848 
1849  //! \brief Tests whether there is a tolerance set on counter diameter
1850  //! \param [in] Hole feature
1851  //! \param [in/out]
1852  //! \param [out] Bool
1853  //! \return NOTOK if error, ISOK if ok
1854  //! \remark
1855 
1857  Dtk_bool HasCounterDiameterTolerance()const {return !(tol_counter[IND_DIAMETER] == NULL);}
1858 
1859 
1860  //! \brief Returns the hole counter depth
1861  //! \param [in] Hole feature
1862  //! \param [in/out]
1863  //! \param [out] Hole counter depth
1864  //! \return NOTOK if error, ISOK if ok
1865  //! \remark
1866 
1867  int get_counter_depth ( double *);
1868  Dtk_Double64 GetCounterDepth() const {return counter_params[IND_DEPTH];}
1869 
1870  //! \brief Gets the hole counter depth with its tolerance value (inf value & sup value)
1871  //! \param [in] Hole feature
1872  //! \param [in/out]
1873  //! \param [out] Counter Depth, Inf Value, Sup Value
1874  //! \return NOTOK if error, ISOK if ok
1875  //! \remark You have to test if there is a tolerance on the counter depth with get_dtk_feat_hole_counter_depth_has_tol. In case of direct call and no tolerance set, you should obtain a NOTOK status
1876 
1877  int get_counter_depth_with_tol ( double *, double *, double *);
1879 
1880  //! \brief Tests whether there is a tolerance set on counter depth
1881  //! \param [in] Hole feature
1882  //! \param [in/out]
1883  //! \param [out] Bool
1884  //! \return NOTOK if error, ISOK if ok
1885  //! \remark
1886 
1888  Dtk_bool HasCounterDepthTolerance()const {return !(tol_counter[IND_DEPTH] == NULL);}
1889 
1890 
1891  //! \brief Returns the hole counter angle
1892  //! \param [in] Hole feature
1893  //! \param [in/out]
1894  //! \param [out] Hole counter angle
1895  //! \return NOTOK if error, ISOK if ok
1896  //! \remark
1897 
1898  int get_counter_angle ( double *);
1899  Dtk_Double64 GetCounterAngle() const {return counter_params[IND_ANGLE];}
1900 
1901  //! \brief Gets the hole counter angle with its tolerance value (inf value & sup value)
1902  //! \param [in] Hole feature
1903  //! \param [in/out]
1904  //! \param [out] Counter Depth, Inf Value, Sup Value
1905  //! \return NOTOK if error, ISOK if ok
1906  //! \remark You have to test if there is a tolerance on the counter angle with get_angle_has_tol. In case of direct call and no tolerance set, you should obtain a NOTOK status
1907 
1908  int get_counter_angle_with_tol ( double *, double *, double *);
1910 
1911 
1912  //! \brief Tests whether there is a tolerance set on counter angle
1913  //! \param [in] Hole feature
1914  //! \param [in/out]
1915  //! \param [out] Bool
1916  //! \return NOTOK if error, ISOK if ok
1917  //! \remark
1918 
1920  Dtk_bool HasCounterAngleTolerance()const {return !(tol_counter[IND_ANGLE] == NULL);}
1921 
1922  int get_annotation ( Dtk_pnt *, char *);
1923 
1924  //! \brief test if start chamfer is activated
1925  //! \return DTK_TRUE if activate, if not DTK_FALSE
1926  //! \remark
1927  Dtk_Int32 IsStartActived() const {return start_active;}
1928 
1929  //! \brief return the angle of the start chamfer
1930  //! \return the angle value
1931  //! \remark
1932  Dtk_Double64 GetStartAngle() const {return start_params[IND_ANGLE];}
1933 
1934  //! \brief return the diameter of the start chamfer
1935  //! \return the diameter value
1936  //! \remark
1937  Dtk_Double64 GetStartDiameter() const {return start_params[IND_DIAMETER];}
1938 
1939 
1940  //! \image html feat_img_relief.png
1941  //! \brief test if relief is activated , only relief or neck can be activated not both
1942  //! \return DTK_TRUE if activate, if not DTK_FALSE
1943  //! \remark
1944  Dtk_Int32 IsReliefActived() const {return relief_active;}
1945 
1946  //! \brief return the angle of the relief
1947  //! \return the angle value
1948  //! \remark
1949  Dtk_Double64 GetReliefAngle() const {return relief_params[IND_ANGLE];}
1950 
1951  //! \brief return the diameter of the relief
1952  //! \return the diameter value
1953  //! \remark
1954  Dtk_Double64 GetReliefDiameter() const {return relief_params[IND_DIAMETER];}
1955 
1956  //! \brief return the depth of the relief
1957  //! \return the depth value
1958  //! \remark
1959  Dtk_Double64 GetReliefDepth() const {return relief_params[IND_DEPTH];}
1960 
1961  //! \image html feat_img_neck.png
1962  //! \brief test if neck is activated , only neck or relief can be activated not both
1963  //! \return DTK_TRUE if activate, if not DTK_FALSE
1964  //! \remark
1965  Dtk_Int32 IsNeckActived() const {return neck_active;}
1966 
1967  //! \brief return the angle of the neck
1968  //! \return the angle value
1969  //! \remark
1970  Dtk_Double64 GetNeckAngle() const {return neck_params[IND_ANGLE];}
1971 
1972  //! \brief return the diameter of the neck
1973  //! \return the diameter value
1974  //! \remark
1975  Dtk_Double64 GetNeckDiameter() const {return neck_params[IND_DIAMETER];}
1976 
1977  //! \brief return the depth of the neck
1978  //! \return the depth value
1979  //! \remark
1980  Dtk_Double64 GetNeckDepth() const {return neck_params[IND_DEPTH];}
1981 
1982  //! \brief test if end chamfer is activated
1983  //! \return DTK_TRUE if activate, if not DTK_FALSE
1984  //! \remark
1985  Dtk_Int32 IsEndActived() const {return end_active;}
1986 
1987  //! \brief return the angle of the end chamfer
1988  //! \return the angle value
1989  //! \remark
1990  Dtk_Double64 GetEndAngle() const {return end_params[IND_ANGLE];}
1991 
1992  //! \brief return the diameter of the end chamfer
1993  //! \return the diameter value
1994  //! \remark
1995  Dtk_Double64 GetEndDiameter() const {return end_params[IND_DIAMETER];}
1996 
1997 } ;
1998 /* Fin Feature hole */
1999 
2000 
2001 /**
2002 @brief Hole Feature : position, direction, type, diameter, anchorpoint of hole feature.
2003 */
2005 
2006 public:
2007 
2011 
2012 public :
2013 
2014 
2015  //! \brief Constructor of Hole Feature
2016  //! \param [in/out]
2017  //! \param [out] Allocated hole feature
2018  //! \return
2019  //! \remark
2020 
2022 
2023  //! \brief Destructor of a hole feature
2024  //! \param [in] Hole feature to destruct
2025  //! \param [in/out]
2026  //! \param [out] Free Hole Feature
2027  //! \return
2028  //! \remark
2029 
2031 
2032  //! \brief Gets the hole start
2033  //! \param [in] Hole Series feature
2034  //! \param [in/out] Hole feature
2035  //! \remark You should test hole type before
2037 
2038  //! \brief Gets the hole middle
2039  //! \param [in] Hole Series feature
2040  //! \param [in/out] Hole feature
2041  //! \remark You should test hole type before
2043 
2044  //! \brief Gets the hole end
2045  //! \param [in] Hole Series feature
2046  //! \param [in/out] Hole feature
2047  //! \remark You should test hole type before
2049 
2050 
2051 
2052 } ;
2053 /* Fin Feature hole */
2054 
2055 /**
2056 @brief Dtk_feat_udf : _Hole, _XmlDefinition of feature.
2057 */
2059 
2060 public:
2061 
2064 
2065 public :
2066 
2067 
2068  //! \brief Constructor of Dtk_feat_udf
2069  //! \param [in/out]
2070  //! \param [out] Allocated hole feature
2071  //! \return
2072  //! \remark
2073 
2075 
2076  //! \brief Destructor of a Dtk_feat_udf
2077  //! \param [in] Hole feature to destruct
2078  //! \param [in/out]
2079  //! \param [out] Free Hole Feature
2080  //! \return
2081  //! \remark
2082 
2084 
2085  //! \brief Gets the hole
2086  //! \param [in] Dtk_feat_udf feature
2087  //! \param [in/out] Hole feature
2088  //! \remark You should test hole type before
2090 
2091  //! \brief Gets the xml definition
2092  //! \param [in] Dtk_feat_hole_udf feature
2093  //! \param [in/out] stream of xml file
2094  //! \remark You should test hole type before
2096 
2097 } ;
2098 /* Fin Feature hole */
2099 
2100 /**
2101 @brief Shell Feature : a shell feature is defined with a list of faces corresponding to its opening and two offset values.
2102 */
2104 
2105 public:
2106 
2113 
2114 
2115  //! \brief Constructor of Shell Feature
2116  //! \param [in/out]
2117  //! \param [out] Allocated shell feature
2118  //! \return
2119  //! \remark
2120 
2122 
2123  //! \brief Destructor of a shell feature
2124  //! \param [in] shell feature to destruct
2125  //! \param [in/out]
2126  //! \param [out]
2127  //! \return Free Shell Feature
2128  //! \remark
2129 
2131 
2132  //! \brief Get the inner thickness value of the feature Shell
2133  //! \param [in] Thickness feature
2134  //! \param [in/out]
2135  //! \param [out] double
2136  //! \return INNER Thickness value of Shell Feature
2137  //! \remark
2138 
2139  int get_inside_thickness ( double *);
2140 
2141  //! \brief Get the outside thickness value of the feature Shell
2142  //! \param [in] Thickness feature
2143  //! \param [in/out]
2144  //! \param [out] double
2145  //! \return OUTER Thickness value of Shell Feature
2146  //! \remark
2147 
2148  int get_outside_thickness ( double *);
2149 
2150  //! \brief Get the number of removed faces of the feature Shell
2151  //! \param [in] Thickness feature
2152  //! \param [in/out]
2153  //! \param [out] int
2154  //! \return Number of removed faces of Shell Feature
2155  //! \remark
2156 
2157  int get_nb_removed_faces ( int *);
2158 
2159  //! \brief Get the number of skins of the feature Shell
2160  //! \param [in] Thickness feature
2161  //! \param [in/out]
2162  //! \param [out] int
2163  //! \return Number of skins of Shell Feature
2164  //! \remark
2165 
2166  int get_nb_skins ( int *);
2167 
2168  //! \brief Get the removed faces of the feature Shell
2169  //! \param [in] Thickness feature
2170  //! \param [in/out]
2171  //! \param [out] Dtk_feat_shell_face
2172  //! \return removed faces of Shell Feature
2173  //! \remark
2174 
2176 
2177  //! \brief Get the skins of the feature Shell
2178  //! \param [in] Thickness feature
2179  //! \param [in/out]
2180  //! \param [out] Dtk_feat_shell_face
2181  //! \return skins of Shell Feature
2182  //! \remark
2183 
2185 
2186 } ;
2187 
2188 /* End feature Shell */
2189 
2190 /**
2191 @brief Feature Constant Radius Edge Ribbon
2192 */
2194 public:
2195 
2196  double cst_radius;
2197 
2200 
2201  //! \brief Returns constant edge ribbon radius
2202  //! \param [in] Ribbon
2203  //! \param [in/out]
2204  //! \param [out] double
2205  //! \return NOTOK if error, ISOK if ok
2206  //! \remark
2207 
2208  int get_radius (double *);
2209 
2210 } ;
2211 
2212 /**
2213 @brief Fillet point
2214 */
2216 
2217 public:
2218 
2220  double radius;
2221  double ratio;
2222 
2225 
2226  Dtk_feat_geometry * elt; /* elt = parent edge if on_edge = DTK_TRUE
2227  geometric ID if on_edge = DTK_FALSE */
2228 
2231 
2232  //! \brief Returns fillet point element
2233  //! \param [in] Fillet point
2234  //! \param [in/out]
2235  //! \param [out] Dtk_feat_geometry
2236  //! \return NOTOK if error, ISOK if ok
2237  //! \remark
2238 
2239  int get_elt ( Dtk_feat_geometry **);
2240 
2241  //! \brief Returns fillet point
2242  //! \param [in] Fillet point
2243  //! \param [in/out]
2244  //! \param [out] Dtk_feat_geometry
2245  //! \return NOTOK if error, ISOK if ok
2246  //! \remark
2247 
2249 
2250  //! \brief Returns fillet point radius
2251  //! \param [in] Fillet point
2252  //! \param [in/out]
2253  //! \param [out] double
2254  //! \return NOTOK if error, ISOK if ok
2255  //! \remark
2256 
2257  int get_radius ( double *);
2258 
2259  //! \brief Returns fillet point ratio on attached edge
2260  //! \param [in] Fillet point
2261  //! \param [in/out]
2262  //! \param [out] double
2263  //! \return NOTOK if error, ISOK if ok
2264  //! \remark
2265 
2266  int get_ratio ( double *);
2267 
2268 
2269 
2270 } ;
2271 
2272 /**
2273 @brief Feature Variable Radius Edge Ribbon
2274 */
2276 public:
2277 
2280 
2282 
2285 
2286  //! \brief Returns constant edge ribbon points number
2287  //! \param [in] Ribbon
2288  //! \param [in/out]
2289  //! \param [out] double
2290  //! \return NOTOK if error, ISOK if ok
2291  //! \remark
2292 
2293  int get_nb_points ( int *);
2294 
2295  //! \brief Returns variable edge ribbon set of points
2296  //! \param [in] Ribbon
2297  //! \param [in/out]
2298  //! \param [out] Dtk_feat_fillet_point**
2299  //! \return NOTOK if error, ISOK if ok
2300  //! \remark
2301 
2304 
2305 };
2306 
2307 
2308 
2309 /**
2310 @brief Feature Edge Ribbon
2311 */
2313 
2314 public:
2315 
2316 
2317 
2321  } ribbon;
2322 
2323 
2324  Dtk_feat_geometry * ribbon_spine;
2325  Dtk_feat_geometry ** elts;
2326  Dtk_feat_geometry ** kept_edges;
2327 
2329  int nb_elts;
2332 
2334 
2337 
2338  //! \brief OBSOLETE Returns edge ribbon propagation as Bool
2339  //! \param [out] Bool: Asked PropagationType.
2340  //! \return DTK_NOTOK if error, DTK_ISOK if ok
2341  //! \deprecated Use GetPropagationType() const method instead.
2342  SetAsDeprecated("Undefined", "Use GetPropagationType")
2343  int get_propagation ( Bool *);
2344 
2345  //! \brief Returns the edge ribbon propagation type.
2346  //! \return Asked Propagation type as PROPAGATION_TYPE enum
2347  PROPAGATION_TYPE GetPropagationType() const;
2348 
2349  //! \brief Returns edge ribbon elements
2350  //! \param [in] Ribbon
2351  //! \param [in/out]
2352  //! \param [out] Dtk_feat_geometry
2353  //! \return NOTOK if error, ISOK if ok
2354  //! \remark
2355 
2356  int get_elts ( Dtk_feat_geometry** *);
2357 
2358  //! \brief Returns edge ribbon elements number
2359  //! \param [in] Ribbon
2360  //! \param [in/out]
2361  //! \param [out] int
2362  //! \return NOTOK if error, ISOK if ok
2363  //! \remark
2364 
2365  int get_nb_elts ( int *);
2366 
2367  //! \brief Returns edge constant ribbon
2368  //! \param [in] Ribbon
2369  //! \param [in/out]
2370  //! \param [out] Dtk_feat_cst_edge_ribbon
2371  //! \return NOTOK if error, ISOK if ok
2372  //! \remark
2373 
2374  int get_cst_ribbon (Dtk_feat_cst_edge_ribbon**);
2375 
2376  //! \brief Returns edge variable ribbon
2377  //! \param [in] Ribbon
2378  //! \param [in/out]
2379  //! \param [out] Dtk_feat_var_edge_ribbon
2380  //! \return NOTOK if error, ISOK if ok
2381  //! \remark
2382 
2383  int get_var_ribbon (Dtk_feat_var_edge_ribbon**);
2384 
2385 
2386 
2387 
2388 } ;
2389 
2390 
2391 /**
2392 @brief Feature Blend Corner (pour les conges)
2393 */
2395 
2396 public:
2397 
2398  Dtk_feat_geometry * corner;
2400 
2403 
2404  //! \brief Returns corner of blend vertex
2405  //! \param [in] Blend vertex
2406  //! \param [in/out]
2407  //! \param [out] Dtk_feat_geometry
2408  //! \return NOTOK if error, ISOK if ok
2409  //! \remark
2410 
2411  int get_corner ( Dtk_feat_geometry **);
2412 
2413  //! \brief Returns back distance of blend vertex
2414  //! \param [in] Blend vertex
2415  //! \param [in/out]
2416  //! \param [out] double
2417  //! \return NOTOK if error, ISOK if ok
2418  //! \remark
2419 
2420  int get_set_back_distance ( double*);
2421 
2422 } ;
2423 
2424 
2425 
2426 /**
2427 @brief Generic Feature Fillet
2428 */
2430 
2431 public:
2432 
2435  Dtk_feat_geometry ** limiting_list;
2442 
2445 
2446  //! \brief Returns Fillet type
2447  //! \param [in] Fillet Feature
2448  //! \param [in/out]
2449  //! \param [out] FILLET_TYPE
2450  //! \return NOTOK if error, ISOK if ok
2451  //! \remark
2452 
2454 
2455  //! \brief Returns Fillet propagation
2456  //! \param [in] Fillet Feature
2457  //! \param [in/out]
2458  //! \param [out] PROPAGATION_TYPE
2459  //! \return NOTOK if error, ISOK if ok
2460  //! \remark
2461 
2463 
2464  //! \brief Returns Fillet edge ribbon number
2465  //! \param [in] Fillet Feature
2466  //! \param [in/out]
2467  //! \param [out] int
2468  //! \return NOTOK if error, ISOK if ok
2469  //! \remark
2470 
2472 
2473  //! \brief Returns Fillet limits number
2474  //! \param [in] Fillet Feature
2475  //! \param [in/out]
2476  //! \param [out] int
2477  //! \return NOTOK if error, ISOK if ok
2478  //! \remark
2479 
2480  int get_nb_limits ( int *) ;
2481 
2482  //! \brief Returns Fillet corners number
2483  //! \param [in] Fillet Feature
2484  //! \param [in/out]
2485  //! \param [out] int
2486  //! \return NOTOK if error, ISOK if ok
2487  //! \remark
2488 
2489  int get_nb_corners ( int *);
2490 
2491  //! \brief Returns Fillet corners
2492  //! \param [in] Fillet Feature
2493  //! \param [in/out]
2494  //! \param [out] Dtk_feat_blend_vertex
2495  //! \return NOTOK if error, ISOK if ok
2496  //! \remark
2497 
2499 
2500  //! \brief Returns Fillet limiting list
2501  //! \param [in] Fillet Feature
2502  //! \param [in/out]
2503  //! \param [out] Dtk_feat_geometry
2504  //! \return NOTOK if error, ISOK if ok
2505  //! \remark
2506 
2507  int get_limiting_list ( Dtk_feat_geometry** *);
2508 
2509  //! \brief Returns Fillet ribbon objects
2510  //! \param [in] Fillet Feature
2511  //! \param [in/out]
2512  //! \param [out] Dtk_feat_edge_ribbon
2513  //! \return NOTOK if error, ISOK if ok
2514  //! \remark
2515 
2517 
2518  //! \brief Returns Fillet trim ribbon mode
2519  //! \param [in] Fillet Feature
2520  //! \param [in/out]
2521  //! \param [out] Bool
2522  //! \return NOTOK if error, ISOK if ok
2523  //! \remark
2524 
2526 
2527 
2528 };
2529 
2530 
2531 /**
2532 @brief Generic Feature Face Fillet
2533 */
2535 
2536 public:
2537 
2538  double radius;
2539  Dtk_feat_geometry* face1;
2540  Dtk_feat_geometry* face2;
2541 
2542  Dtk_feat_geometry* limitingElement;
2543  Dtk_feat_geometry* holdCurve;
2544  Dtk_feat_geometry* spine;
2545 
2548 
2549 
2550  //! \brief Returns Face Fillet radius
2551  //! \param [in] Face Fillet Feature
2552  //! \param [in/out]
2553  //! \param [out] double
2554  //! \return NOTOK if error, ISOK if ok
2555  //! \remark
2556 
2557  int get_radius ( double *);
2558 
2559 
2560  //! \brief Returns First face element to Fillet
2561  //! \param [in] Face Fillet Feature
2562  //! \param [in/out]
2563  //! \param [out] Dtk_feat_geometry*
2564  //! \return NOTOK if error, ISOK if ok
2565  //! \remark
2566 
2567  int get_face1 ( Dtk_feat_geometry**);
2568 
2569 
2570 
2571  //! \brief Returns Second face element to Fillet
2572  //! \param [in] Face Fillet Feature
2573  //! \param [in/out]
2574  //! \param [out] Dtk_feat_geometry*
2575  //! \return NOTOK if error, ISOK if ok
2576  //! \remark
2577 
2578  int get_face2 ( Dtk_feat_geometry**);
2579 
2580 
2581 
2582  //! \brief Returns Face Fillet limiting element
2583  //! \param [in] Face Fillet Feature
2584  //! \param [in/out]
2585  //! \param [out] Dtk_feat_geometry
2586  //! \return NOTOK if error, ISOK if ok
2587  //! \remark
2588 
2589  int get_limiting_element ( Dtk_feat_geometry**);
2590 
2591 
2592  //! \brief Returns Face Fillet hold curve
2593  //! \param [in] Face Fillet Feature
2594  //! \param [in/out]
2595  //! \param [out] Dtk_feat_geometry
2596  //! \return NOTOK if error, ISOK if ok
2597  //! \remark
2598 
2599  int get_hold_curve ( Dtk_feat_geometry**);
2600 
2601 
2602 
2603  //! \brief Returns Face Fillet spine
2604  //! \param [in] Face Fillet Feature
2605  //! \param [in/out]
2606  //! \param [out] Dtk_feat_geometry
2607  //! \return NOTOK if error, ISOK if ok
2608  //! \remark
2609 
2610  int get_spine ( Dtk_feat_geometry**);
2611 
2612 };
2613 
2614 
2615 /**
2616 @brief Generic Feature Face Fillet
2617 */
2619 
2620 public:
2621 
2622  Dtk_feat_geometry* face1;
2623  Dtk_feat_geometry* face2;
2624  Dtk_feat_geometry* faceToRemove;
2625  Dtk_feat_geometry* limitingElement;
2626 
2629 
2630 
2631 
2632  //! \brief Returns First face element to tri-tangent Fillet
2633  //! \param [in] Tri-tangent Fillet Feature
2634  //! \param [in/out]
2635  //! \param [out] Dtk_feat_geometry*
2636  //! \return NOTOK if error, ISOK if ok
2637  //! \remark
2638 
2639  int get_face1 ( Dtk_feat_geometry**);
2640 
2641 
2642 
2643  //! \brief Returns Second face element to tri-tangent Fillet
2644  //! \param [in] Tri-tangent Fillet Feature
2645  //! \param [in/out]
2646  //! \param [out] Dtk_feat_geometry*
2647  //! \return NOTOK if error, ISOK if ok
2648  //! \remark
2649 
2650  int get_face2 ( Dtk_feat_geometry**);
2651 
2652 
2653  //! \brief Returns Removed face element to tri-tangent Fillet
2654  //! \param [in] Tri-tangent Fillet Feature
2655  //! \param [in/out]
2656  //! \param [out] Dtk_feat_geometry*
2657  //! \return NOTOK if error, ISOK if ok
2658  //! \remark
2659 
2660  int get_remove_face ( Dtk_feat_geometry**);
2661 
2662 
2663 
2664  //! \brief Returns tri-tangent Fillet limiting element
2665  //! \param [in] Tri-tangent Fillet Feature
2666  //! \param [in/out]
2667  //! \param [out] Dtk_feat_geometry
2668  //! \return NOTOK if error, ISOK if ok
2669  //! \remark
2670 
2671  int get_limiting_element ( Dtk_feat_geometry**);
2672 
2673 };
2674 
2675 
2676 
2677 /**
2678 @brief Feature Sweep (Rib & Slot)
2679 */
2681 
2682 public:
2683 
2684 
2685 
2686 
2687 
2688  Dtk_feat_geometry ** profiles;
2690  Dtk_feat_geometry * center_curve;
2692  union {
2693  Dtk_feat_geometry * selection;
2694  Dtk_feat_axis * axis;
2695  } control_object;
2696 
2701 
2702 
2705 
2706  //! \brief Returns Sweep type
2707  //! \param [in] Sweep Feature
2708  //! \param [in/out]
2709  //! \param [out] DTK_SWEEP_TYPE
2710  //! \return NOTOK if error, ISOK if ok
2711  //! \remark
2712 
2714 
2715  //! \brief Returns thickness of a sweep.
2716  //! \param [in] Sweep Feature
2717  //! \param [in/out]
2718  //! \param [out] Dtk_feat_thickness (the internal and external thickness)
2719  //! \return NOTOK if error, ISOK if ok
2720  //! \remark
2721 
2723 
2724  //! \brief Returns Sweep profiles number
2725  //! \param [in] Sweep Feature
2726  //! \param [in/out]
2727  //! \param [out] int
2728  //! \return NOTOK if error, ISOK if ok
2729  //! \remark
2730 
2731  int get_nb_profiles ( int *);
2732 
2733  //! \brief Get the profiles geometry of the feature Sweep
2734  //! \param [in] Sweep feature
2735  //! \param [in/out]
2736  //! \param [out] Dtk_feat_geometry
2737  //! \return profiles geometry of Sweep Feature
2738  //! \remark
2739 
2740  int get_profiles ( Dtk_feat_geometry *** );
2741 
2742  //! \brief Get the center curve of the feature Sweep
2743  //! \param [in] Sweep feature
2744  //! \param [in/out]
2745  //! \param [out] Dtk_feat_geometry
2746  //! \return center curve geometry of Sweep Feature
2747  //! \remark
2748 
2749  int get_center_curve ( Dtk_feat_geometry ** );
2750 
2751  //! \brief Get the boolean value of merge sweep ends of the feature Sweep
2752  //! \param [in] Sweep feature
2753  //! \param [in/out]
2754  //! \param [out] Bool
2755  //! \return boolean value of merge sweep ends of Sweep Feature
2756  //! \remark
2757 
2758  int get_merge_ends ( Bool * );
2759 
2760  //! \brief Get the profile control type of the feature Sweep
2761  //! \param [in] Sweep feature
2762  //! \param [in/out]
2763  //! \param [out] PROFILE_CONTROL_TYPE
2764  //! \return profile control type of Sweep Feature
2765  //! \remark
2766 
2768 
2769  //! \brief Get axis of the feature Sweep
2770  //! \param [in] Sweep feature
2771  //! \param [in/out]
2772  //! \param [out] Dtk_feat_axis
2773  //! \return Axis of Sweep Feature
2774  //! \remark
2775 
2777 
2778  //! \brief Get selection control object of feature Sweep
2779  //! \param [in] Sweep feature
2780  //! \param [in/out]
2781  //! \param [out] Dtk_feat_geometry
2782  //! \return selection control object of Sweep Feature
2783  //! \remark
2784 
2785  int get_control_object_selection ( Dtk_feat_geometry ** );
2786 
2787  //! \brief Get axis control object of feature Sweep
2788  //! \param [in] Sweep feature
2789  //! \param [in/out]
2790  //! \param [out] Dtk_feat_axis
2791  //! \return axis control object of Sweep Feature
2792  //! \remark
2793 
2795 } ;
2796 
2797 
2798 
2799 /**
2800 @brief Generic Split Surface
2801 */
2802 
2804 public:
2805  Dtk_feat_geometry * splitting_element;
2806  /*@brief The side value is either PositiveSide (=0) when it refers to
2807  the same orientation as the surfacic feature normal vector or
2808  NegativeSide (=1) when it refers to the opposite orientation as the
2809  surfacic feature normal vector. */
2811 
2814 
2815 
2816 
2817  //! \brief Returns the splitting surface element of the feature
2818  //! \param [in] Split Surface Feature
2819  //! \param [in/out]
2820  //! \param [out] Dtk_feat_geometry *
2821  //! \return NOTOK if error, ISOK if ok
2822  //! \remark
2823 
2824  int get_split_element (Dtk_feat_geometry* *);
2825 
2826 
2827  //! \brief Returns the side indicating the portion of the body to be kept
2828  //! \param [in] Split Surface Feature
2829  //! \param [in/out]
2830  //! \param [out] Bool
2831  //! \return NOTOK if error, ISOK if ok
2832  //! \remark
2833 
2834  int get_side (Bool *);
2835 };
2836 
2837 
2838 /**
2839 @brief Generic Thick Surface
2840 */
2842 public:
2843 
2844  Dtk_feat_geometry * surface;
2848 
2851 
2852 
2853  //! \brief Returns the thickened surface element of the feature
2854  //! \param [in] Thick Surface Feature
2855  //! \param [in/out]
2856  //! \param [out] Dtk_feat_geometry *
2857  //! \return NOTOK if error, ISOK if ok
2858  //! \remark
2859 
2860  int get_surface (Dtk_feat_geometry* *);
2861 
2862 
2863  //! \brief Returns the first offset of the thickness surface
2864  //! \param [in] Thick Surface Feature
2865  //! \param [in/out]
2866  //! \param [out] double
2867  //! \return NOTOK if error, ISOK if ok
2868  //! \remark
2869 
2870  int get_first_offset (double *);
2871 
2872 
2873  //! \brief Returns the second offset of the thickness surface
2874  //! \param [in] Thick Surface Feature
2875  //! \param [in/out]
2876  //! \param [out] double
2877  //! \return NOTOK if error, ISOK if ok
2878  //! \remark
2879 
2880  int get_second_offset (double *);
2881 
2882 
2883 
2884  //! \brief Returns the reverse direction boolean value
2885  //! \param [in] Thick Surface Feature
2886  //! \param [in/out]
2887  //! \param [out] Bool
2888  //! \return NOTOK if error, ISOK if ok
2889  //! \remark
2890 
2892 };
2893 
2894 
2895 /**
2896 @brief Generic Sew Surface
2897 */
2899 public:
2900 
2904 
2907 };
2908 
2909 
2910 /**
2911 @brief Generic Close Surface
2912 */
2914 
2915 public:
2916 
2917  Dtk_feat_geometry * surf;
2918  double tolerance;
2919 
2922 
2923 
2924  //! \brief Returns the closed surface element of the feature
2925  //! \param [in] Close Surface Feature
2926  //! \param [in/out]
2927  //! \param [out] Dtk_feat_geometry *
2928  //! \return NOTOK if error, ISOK if ok
2929  //! \remark
2930 
2931  int get_surface (Dtk_feat_geometry* *);
2932 
2933 
2934 
2935  //! \brief Returns the tolerance of the close surface feature
2936  //! \param [in] Close Surface Feature
2937  //! \param [in/out]
2938  //! \param [out] double
2939  //! \return NOTOK if error, ISOK if ok
2940  //! \remark
2941 
2942  int get_tolerance (double *);
2943 
2944 };
2945 
2946 /**
2947 @brief Generic Remove Face
2948 */
2950 
2951 public:
2952 
2955 
2956 
2957  //! \brief Constructor of Remove Face Feature
2958  //! \param [in/out]
2959  //! \param [out] Allocated Remove Face feature
2960  //! \return NOTOK if error, ISOK if ok
2961  //! \remark
2962 
2963 
2965 
2966 
2967 
2968  //! \brief Destructor of a Remove Face Feature
2969  //! \param [in] Remove Face Feature to destruct
2970  //! \param [in/out]
2971  //! \param [out]
2972  //! \return Free Remove Face Feature
2973  //! \remark
2974 
2975 
2977 
2978 
2979  //! \brief Returns the array of faces to remove of the remove face feature
2980  //! \param [in] Remove Face Feature
2981  //! \param [in/out]
2982  //! \param [out] Dtk_tab <Dtk_feat_geometry *>
2983  //! \return NOTOK if error, ISOK if ok
2984  //! \remark
2985 
2987 
2988 
2989  //! \brief Returns the array of faces to keep of the remove face feature
2990  //! \param [in] Remove Face Feature
2991  //! \param [in/out]
2992  //! \param [out] Dtk_tab <Dtk_feat_geometry *>
2993  //! \return NOTOK if error, ISOK if ok
2994  //! \remark
2995 
2997 
2998 
2999 
3000  //! \brief Returns the number of faces to remove of the Remove Face feature
3001  //! \param [in] Remove Face Feature
3002  //! \param [in/out]
3003  //! \param [out] int
3004  //! \return NOTOK if error, ISOK if ok
3005  //! \remark
3006 
3008 
3009 
3010  //! \brief Returns the number of faces to keep of the Remove Face feature
3011  //! \param [in] Remove Face Feature
3012  //! \param [in/out]
3013  //! \param [out] int
3014  //! \return NOTOK if error, ISOK if ok
3015  //! \remark
3016 
3017  int get_kept_faces_nb (int*);
3018 
3019 };
3020 
3021 
3022 /**
3023 @brief Generic Replace Face
3024 */
3026 
3027 public:
3028 
3029  Dtk_feat_geometry* face_to_remove;
3030  Dtk_feat_geometry* replacing_surface;
3031 
3032 
3033 
3034  //! \brief Constructor of Replace Face Feature
3035  //! \param [in/out]
3036  //! \param [out] Allocated Replace Face feature
3037  //! \return NOTOK if error, ISOK if ok
3038  //! \remark
3039 
3040 
3042 
3043 
3044 
3045  //! \brief Destructor of a Replace Face Feature
3046  //! \param [in] Replace Face Feature to destruct
3047  //! \param [in/out]
3048  //! \param [out]
3049  //! \return Free Replace Face Feature
3050  //! \remark
3051 
3052 
3054 
3055 
3056  //! \brief Returns the face to remove of the replace face feature
3057  //! \param [in] Replace Face Feature
3058  //! \param [in/out]
3059  //! \param [out] Dtk_feat_geometry
3060  //! \return NOTOK if error, ISOK if ok
3061  //! \remark
3062 
3063  int get_face_to_remove (Dtk_feat_geometry**);
3064 
3065 
3066  //! \brief Returns the replacing surface geometry of the Replace Face feature
3067  //! \param [in] Replace Face Feature
3068  //! \param [in/out]
3069  //! \param [out] Dtk_feat_geometry *
3070  //! \return NOTOK if error, ISOK if ok
3071  //! \remark
3072 
3073 
3074  int get_replacing_surface (Dtk_feat_geometry**);
3075 
3076 };
3077 
3078 
3080 
3081 public:
3082 
3083 
3085  double length;
3086  double spacing;
3088 
3089  // Dtk_feat_geometry * direction_geom;
3093 
3096 
3097 
3098 
3099  //! \brief Returns Number of occurrences in this pattern direction (including the base feature to repeat)
3100  //! \param [in] Pattern Feature
3101  //! \param [in/out]
3102  //! \param [out] int
3103  //! \return NOTOK if error, ISOK if ok
3104  //! \remark
3105 
3106  int get_nb_instances (int *);
3107 
3108 
3109 
3110  //! \brief Returns the distance between two consecutive occurrences
3111  //! \param [in] Pattern Feature
3112  //! \param [in/out]
3113  //! \param [out] int
3114  //! \return NOTOK if error, ISOK if ok
3115  //! \remark
3116 
3117  int get_spacing (double *);
3118 
3119 
3120 
3121  //! \brief Returns the length of the pattern, I.E, the distance between the first and the last occurrence.
3122  //! \param [in] Pattern Feature
3123  //! \param [in/out]
3124  //! \param [out] double
3125  //! \return NOTOK if error, ISOK if ok
3126  //! \remark For Circular pattern: The length is the total angle of the circular pattern. Total Angle = Spacing * (nb_instances - 1);
3127 
3128  int get_length (double *);
3129 
3130 
3131 
3132  //! \brief Returns the axis of direction for pattern feature.
3133  //! \param [in] Pattern Feature
3134  //! \param [in/out]
3135  //! \param [out] Dtk_feat_axis*
3136  //! \return NOTOK if error, ISOK if ok
3137  //! \remark
3138 
3140 
3141 
3142  //! \brief Returns the boolean value for the reverse status of the pattern direction.
3143  //! \param [in] Pattern Feature
3144  //! \param [in/out]
3145  //! \param [out] Bool
3146  //! \return NOTOK if error, ISOK if ok
3147  //! \remark
3148 
3150 
3151  //! \brief Returns the boolean value to check if instances are equal spacing.
3152  //! \param [in] Pattern Feature
3153  //! \param [in/out]
3154  //! \param [out] Dtk_Bool
3155  //! \return NOTOK if error, ISOK if ok
3156  //! \remark
3158 
3159  //! \brief Returns the list of unequal spacing values ( available if get_is_equal_spacing returns DTK_FALSE)
3160  //! \param [in] Pattern Feature
3161  //! \param [in/out]
3162  //! \param [out] list of double for spacing values
3163  //! \return NOTOK if error, ISOK if ok
3164  //! \remark
3166 } ;
3167 
3168 
3170 public:
3173 
3174 
3177 
3178 
3179 
3180  //! \brief Returns the first direction definition of the specified rectangular pattern feature.
3181  //! \param [in] Pattern Feature
3182  //! \param [in/out]
3183  //! \param [out] Dtk_feat_pattern_dir*
3184  //! \return NOTOK if error, ISOK if ok
3185  //! \remark
3186 
3188 
3189 
3190  //! \brief Returns the second direction definition of the specified rectangular pattern feature.
3191  //! \param [in] Pattern Feature
3192  //! \param [in/out]
3193  //! \param [out] Dtk_feat_pattern_dir*
3194  //! \return NOTOK if error, ISOK if ok
3195  //! \remark
3196 
3198 
3199 } ;
3200 
3201 
3202 
3204 public:
3208  //set for proe
3209  Dtk_Double64 offset; //angle from the begin reference
3212 
3213 
3214 
3217 
3218 
3219 
3220 
3221  //! \brief Returns the definition of the specified circular pattern feature (parameters + direction).
3222  //! \param [in] Pattern Feature
3223  //! \param [in/out]
3224  //! \param [out] Dtk_feat_pattern_dir*
3225  //! \return NOTOK if error, ISOK if ok
3226  //! \remark
3227 
3229 
3230 
3231 
3232  //! \brief Returns the radial alignment defining the orientation of the created occurrences.
3233  //! \param [in] Pattern Feature
3234  //! \param [in/out]
3235  //! \param [out] Bool
3236  //! \return NOTOK if error, ISOK if ok
3237  //! \remark
3238 
3240 
3241 
3242 
3243  //! \brief Returns the number of crown created from the original circular pattern (including the base circ pattern).
3244  //! \param [in] Pattern Feature
3245  //! \param [in/out]
3246  //! \param [out] int
3247  //! \return NOTOK if error, ISOK if ok
3248  //! \remark
3249 
3250  int get_nb_circles (int *);
3251 
3252 
3253  //! \brief Returns the distance between two consecutive circles of the crown created.
3254  //! \param [in] Pattern Feature
3255  //! \param [in/out]
3256  //! \param [out] double
3257  //! \return NOTOK if error, ISOK if ok
3258  //! \remark
3259 
3260  int get_circle_spacing (double *);
3261 
3262 
3263  //! \brief Returns the maximum distance allowed between the first and the last circle of a crown (thickness of the whole crown).
3264  //! \param [in] Pattern Feature
3265  //! \param [in/out]
3266  //! \param [out] double
3267  //! \return NOTOK if error, ISOK if ok
3268  //! \remark Crown Thickness = ( Number Circles - 1 ) * ( Circle Spacing )
3269 
3270  int get_crown_thickness (double *);
3271 
3272 
3273 } ;
3274 
3275 
3276 
3278 public:
3282  } entity;
3283 
3289 
3290  double angle;
3291 
3292  int row1;
3293  int row2;
3295 
3301 
3304 
3305 
3306 
3307 
3308  //! \brief Returns pattern type
3309  //! \param [in] Pattern Feature
3310  //! \param [in/out]
3311  //! \param [out] DTK_PATTERN_TYPE
3312  //! \return NOTOK if error, ISOK if ok
3313  //! \remark
3314 
3316 
3317 
3318 
3319  //! \brief Returns object type
3320  //! \param [in] Pattern Feature
3321  //! \param [in/out]
3322  //! \param [out] DTK_OBJECT_TYPE
3323  //! \return NOTOK if error, ISOK if ok
3324  //! \remark
3325 
3327 
3328 
3329 
3330  //! \brief Returns the set of objects geometry to pattern.
3331  //! \param [in] pattern Feature
3332  //! \param [in/out]
3333  //! \param [out] Dtk_feat_geometry ** (the geometry of the objects to pattern)
3334  //! \return NOTOK if error, ISOK if ok
3335  //! \remark
3336 
3338 
3339 
3340 
3341  //! \brief Returns the number of objects to pattern.
3342  //! \param [in] pattern Feature
3343  //! \param [in/out]
3344  //! \param [out] int
3345  //! \return NOTOK if error, ISOK if ok
3346  //! \remark
3347 
3349 
3350 
3351 
3352  //! \brief Returns the number of feature's IDs to pattern.
3353  //! \param [in] pattern Feature
3354  //! \param [in/out]
3355  //! \param [out] int
3356  //! \return NOTOK if error, ISOK if ok
3357  //! \remark
3358 
3359  int get_nb_input_ids ( int *);
3360 
3361 
3362 
3363  //! \brief Returns the array of Feature's IDs or Body ID to pattern.
3364  //! \param [in] pattern Feature
3365  //! \param [in/out]
3366  //! \param [out] long * (Array of IDs, size = nb_input_ids)
3367  //! \return NOTOK if error, ISOK if ok
3368  //! \remark
3369 
3371 
3372 
3373  //! \brief Returns the number of features resulted of the pattern feature.
3374  //! \param [in] Pattern Feature
3375  //! \param [in/out]
3376  //! \param [out] int
3377  //! \return NOTOK if error, ISOK if ok
3378  //! \remark
3379 
3380  int get_nb_features ( int *);
3381 
3382 
3383 
3384  //! \brief Returns the array of features resulted of the pattern feature.
3385  //! \param [in] Pattern Feature
3386  //! \param [in/out]
3387  //! \param [out] Dtk_feat **
3388  //! \return NOTOK if error, ISOK if ok
3389  //! \remark
3390 
3392 
3393 
3394 
3395 
3396  //! \brief Returns the generated tool status indicating if generated features are to be gotten.
3397  //! \param [in] Pattern Feature
3398  //! \param [in/out]
3399  //! \param [out] bool
3400  //! \return NOTOK if error, ISOK if ok
3401  //! \remark
3402 
3403  int get_gener_tool ( bool *);
3404 
3405 
3406 
3407  //! \brief Returns a boolean value indicating whether some inactive occurrences are set.
3408  //! \param [in] Pattern Feature
3409  //! \param [in/out]
3410  //! \param [out] Bool
3411  //! \return NOTOK if error, ISOK if ok
3412  //! \remark The option set the ability to users to delete some occurrences of the resulted pattern. Enabling this option, and double clicking on a simple occurrence fulfill the removal of selected occurrences.
3413 
3415 
3416 
3417 
3418 
3419  //! \brief Returns the number of whole instances generated by the pattern feature .
3420  //! \param [in] Pattern Feature
3421  //! \param [in/out]
3422  //! \param [out] int
3423  //! \return NOTOK if error, ISOK if ok
3424  //! \remark
3425 
3426  int get_nb_instances ( int *);
3427 
3428 
3429  //! \brief Returns the array of boolean values to determine an occurrence to be set active or inactive.
3430  //! \param [in] Pattern Feature
3431  //! \param [in/out]
3432  //! \param [out] Bool * (size of the array = nb_instances)
3433  //! \return NOTOK if error, ISOK if ok
3434  //! \remark
3435 
3437 
3438 
3439 
3440  //! \brief Returns the order of the base feature in the list of occurrences resulted of the pattern feature.
3441  //! \param [in] Pattern Feature
3442  //! \param [in/out]
3443  //! \param [out] int
3444  //! \return NOTOK if error, ISOK if ok
3445  //! \remark For Circular Pattern : Row1 is the order according to the angular Direction For Rectangular Pattern :
3446  //! \remark Row1 is the order according to the first Direction
3447 
3448  int get_row1 ( int *);
3449 
3450 
3451 
3452  //! \brief Returns the order of the base feature in the list of occurrences resulted of the pattern feature.
3453  //! \param [in] Pattern Feature
3454  //! \param [in/out]
3455  //! \param [out] int
3456  //! \return NOTOK if error, ISOK if ok
3457  //! \remark For Circular Pattern : Row2 is the order according to the Radial Direction, viz. the order of the base circle in the crown among the set of whole circles .For Rectangular Pattern : Row2 is the order according to the second Direction
3458 
3459  int get_row2 ( int *);
3460 
3461 
3462 
3463 
3464  //! \brief Returns the rotation angle specified to the pattern feature.
3465  //! \param [in] Pattern Feature
3466  //! \param [in/out]
3467  //! \param [out] double
3468  //! \return NOTOK if error, ISOK if ok
3469  //! \remark For Circular Pattern : It represents an additional distance between the base feature to pattern and the first occurrence among the repetitions. For Rectangular Pattern : It represents the angle of deviation of the pattern according to its first direction
3470 
3471  int get_angle ( double *);
3472 
3473 
3474 
3475  //! \brief Returns the design intent of the pattern (keeping specifications).
3476  //! \param [in] Pattern Feature
3477  //! \param [in/out]
3478  //! \param [out] Bool
3479  //! \return NOTOK if error, ISOK if ok
3480  //! \remark
3481 
3483 
3484 
3485 
3486  //! \brief Returns the rectangular entity of the pattern feature.
3487  //! \param [in] Pattern Feature
3488  //! \param [in/out]
3489  //! \param [out] Dtk_feat_rect_pattern*
3490  //! \return NOTOK if error, ISOK if ok
3491  //! \remark
3492 
3494 
3495 
3496 
3497  //! \brief Returns the circular entity of the pattern feature.
3498  //! \param [in] Pattern Feature
3499  //! \param [in/out]
3500  //! \param [out] Dtk_feat_circ_pattern*
3501  //! \return NOTOK if error, ISOK if ok
3502  //! \remark
3503 
3505 
3506 
3507 
3508 };
3509 
3510 
3512 {
3513 public:
3514  Dtk_feat_geometry * object_to_pattern;
3515  Dtk_feat_geometry * anchor_point;
3517 
3521 
3524 
3526 
3529 
3530 
3531 
3532  //! \brief Returns the geometry of the object to pattern to pattern.
3533  //! \param [in] User Pattern Feature
3534  //! \param [in/out]
3535  //! \param [out] Dtk_feat_geometry *
3536  //! \return NOTOK if error, ISOK if ok
3537  //! \remark
3538 
3539  int get_object_to_pattern ( Dtk_feat_geometry**);
3540 
3541 
3542 
3543  //! \brief Returns the design intent of the user pattern (keeping specifications).
3544  //! \param [in] User Pattern Feature
3545  //! \param [in/out]
3546  //! \param [out] Bool
3547  //! \return NOTOK if error, ISOK if ok
3548  //! \remark
3549 
3551 
3552 
3553 
3554  //! \brief Returns the anchor point of the user pattern feature.
3555  //! \param [in] User Pattern Feature
3556  //! \param [in/out]
3557  //! \param [out] Dtk_feat_geometry *
3558  //! \return NOTOK if error, ISOK if ok
3559  //! \remark
3560 
3561  int get_anchor_point ( Dtk_feat_geometry**);
3562 
3563 
3564 
3565  //! \brief Returns the number of points to user pattern.
3566  //! \param [in] User Pattern Feature
3567  //! \param [in/out]
3568  //! \param [out] int * (number of points)
3569  //! \return NOTOK if error, ISOK if ok
3570  //! \remark
3571 
3572  int get_nb_points ( int *);
3573 
3574 
3575  //! \brief Returns the points to user pattern.
3576  //! \param [in] User Pattern Feature
3577  //! \param [in/out]
3578  //! \param [out] Dtk_pnt * (Array of points)
3579  //! \return NOTOK if error, ISOK if ok
3580  //! \remark
3581 
3583 
3584 
3585  //! \brief Returns the number of features resulted of the user pattern feature.
3586  //! \param [in] User Pattern Feature
3587  //! \param [in/out]
3588  //! \param [out] int
3589  //! \return NOTOK if error, ISOK if ok
3590  //! \remark
3591 
3592  int get_nb_features ( int *);
3593 
3594 
3595 
3596  //! \brief Returns the array of features resulted of the user pattern feature.
3597  //! \param [in] User Pattern Feature
3598  //! \param [in/out]
3599  //! \param [out] Dtk_feat **
3600  //! \return NOTOK if error, ISOK if ok
3601  //! \remark
3602 
3604 
3605 
3606 
3607  //! \brief Returns the generated tool status indicating if generated features are to be gotten.
3608  //! \param [in] User Pattern Feature
3609  //! \param [in/out]
3610  //! \param [out] bool
3611  //! \return NOTOK if error, ISOK if ok
3612  //! \remark
3613 
3614  int get_gener_tool ( bool *);
3615 
3616 
3617  //! \brief Returns the number of feature's IDs to user pattern feature.
3618  //! \param [in] User Pattern Feature
3619  //! \param [in/out]
3620  //! \param [out] int
3621  //! \return NOTOK if error, ISOK if ok
3622  //! \remark
3623 
3624  int get_nb_input_ids ( int *);
3625 
3626 
3627 
3628  //! \brief Returns the array of Feature's IDs or Body ID to user pattern feature.
3629  //! \param [in] User Pattern Feature
3630  //! \param [in/out]
3631  //! \param [out] long * (Array of IDs, size = nb_input_ids)
3632  //! \return NOTOK if error, ISOK if ok
3633  //! \remark
3634 
3636 
3637 
3638 
3639 } ;
3640 
3642 {
3643 public:
3644  Dtk_feat_geometry* elementGeomtry;
3645  long elementID;
3646  //bool hideIntitialElement; // applied directly to the affected element.
3648 
3651 
3652 
3653  //! \brief Returns the geometry of the element to transform, i.e to translate, to rotate or to symmetry
3654  //! \param [in] Dtk_feat_surface_transfo Feature
3655  //! \param [in/out]
3656  //! \param [out] Dtk_feat_geometry
3657  //! \return NOTOK if error, ISOK if ok
3658  //! \remark
3659 
3660  int get_element_geometry ( Dtk_feat_geometry **);
3661 
3662 
3663  //! \brief Returns the id of the element to transform, i.e to translate, to rotate or to symmetry
3664  //! \param [in] Dtk_feat_surface_transfo Feature
3665  //! \param [in/out]
3666  //! \param [out] long
3667  //! \return NOTOK if error, ISOK if ok
3668  //! \remark
3669 
3670  int get_element_id ( long*);
3671 
3672 
3673  //! \brief Returns whether to hide or to show the initial element to transform
3674  //! \param [in] Dtk_feat_surface_transfo Feature
3675  //! \param [in/out]
3676  //! \param [out] 1: Hide the initial Element, 0: Show the initial Element
3677  //! \return NOTOK if error, ISOK if ok
3678  //! \remark
3679 
3680  //int get_hide_Intitial_Element( bool*);
3681 
3682 
3683  //! \brief Returns if the result of the transormation feature is a surface or a volume. This option is available for volume elements because surface elements can result solely surface elements.
3684  //! \param [in] Dtk_feat_surface_transfo Feature
3685  //! \param [in/out]
3686  //! \param [out] 1: The result element is surface, 0: The result element is Volume
3687  //! \return NOTOK if error, ISOK if ok
3688  //! \remark
3689 
3690  int get_isSurfaceResult ( bool*);
3691 
3692 };
3693 
3694 
3696 {
3697 public:
3698  Dtk_feat_geometry ** object_to_mirror;
3699  Dtk_feat_geometry * reference;
3700  long * input_ids;
3701 
3703 
3704  int nb_elts;
3706 
3708  bool isMirror;
3710 
3713 
3714 
3715 
3716  //! \brief Returns boolean value to denote whether it is a mirror or symmetric feature
3717  //! \param [in] Mirror Feature
3718  //! \param [in/out]
3719  //! \param [out] 1 : Mirror Feature , 0 : Symmetry feature
3720 
3721  //! \return NOTOK if error, ISOK if ok
3722  //! \remark
3723 
3724  int get_isMirror ( bool *);
3725 
3726 
3727 
3728  //! \brief Returns object type
3729  //! \param [in] Mirror Feature
3730  //! \param [in/out]
3731  //! \param [out] DTK_OBJECT_TYPE
3732  //! \return NOTOK if error, ISOK if ok
3733  //! \remark
3734 
3736 
3737 
3738  //! \brief Returns the set of objects geometry to mirror.
3739  //! \param [in] Mirror Feature
3740  //! \param [in/out]
3741  //! \param [out] Dtk_feat_geometry ** (the geometry of the object to mirror)
3742  //! \return NOTOK if error, ISOK if ok
3743  //! \remark
3744 
3745  int get_object_to_mirror ( Dtk_feat_geometry***);
3746 
3747 
3748 
3749  //! \brief Returns the number of elements to mirror.
3750  //! \param [in] Mirror Feature
3751  //! \param [in/out]
3752  //! \param [out] int
3753  //! \return NOTOK if error, ISOK if ok
3754  //! \remark
3755 
3756  int get_nb_elts ( int *);
3757 
3758 
3759 
3760  //! \brief Returns the geometry reference to mirror.
3761  //! \param [in] Mirror Feature
3762  //! \param [in/out]
3763  //! \param [out] Dtk_feat_geometry *
3764  //! \return NOTOK if error, ISOK if ok
3765  //! \remark
3766 
3767  int get_reference ( Dtk_feat_geometry**);
3768 
3769 
3770 
3771  //! \brief Returns the number of feature's IDs to mirror.
3772  //! \param [in] Mirror Feature
3773  //! \param [in/out]
3774  //! \param [out] int
3775  //! \return NOTOK if error, ISOK if ok
3776  //! \remark
3777 
3778  int get_nb_input_ids ( int *);
3779 
3780 
3781 
3782  //! \brief Returns the array of Feature's IDs or Body ID to mirror.
3783  //! \param [in] Mirror Feature
3784  //! \param [in/out]
3785  //! \param [out] long * (Array of IDs)
3786  //! \return NOTOK if error, ISOK if ok
3787  //! \remark
3788 
3789  int get_input_ids ( long**);
3790 
3791 
3792 
3793  //! \brief Returns the number of features resulted of the mirror feature.
3794  //! \param [in] Mirror Feature
3795  //! \param [in/out]
3796  //! \param [out] int
3797  //! \return NOTOK if error, ISOK if ok
3798  //! \remark
3799 
3800  int get_nb_features ( int *);
3801 
3802 
3803 
3804  //! \brief Returns the array of features resulted of the mirror feature.
3805  //! \param [in] Mirror Feature
3806  //! \param [in/out]
3807  //! \param [out] Dtk_feat **
3808  //! \return NOTOK if error, ISOK if ok
3809  //! \remark
3810 
3812 
3813 
3814 
3815 
3816  //! \brief Returns the generated tool status to indicate whether features generated of the mirror have to be gotten or not.
3817  //! \param [in] Mirror Feature
3818  //! \param [in/out]
3819  //! \param [out] bool
3820  //! \return NOTOK if error, ISOK if ok
3821  //! \remark
3822 
3823  int get_gener_tool ( bool *);
3824 
3825 
3826 } ;
3827 
3828 /**
3829 @brief Generic Symmetry Feature
3830 */
3832 
3833 public:
3834 
3835  Dtk_feat_geometry* reference;
3836 
3837 
3838  //! \brief Constructor of Symmetry Feature
3839  //! \param [in]
3840  //! \param [in/out]
3841  //! \param [out] Allocated Symmetry feature
3842  //! \return NOTOK if error, ISOK if ok
3843  //! \remark
3844 
3845 
3847 
3848 
3849 
3850  //! \brief Destructor of a Symmetry Feature
3851  //! \param [in] Symmetry Feature to destruct
3852  //! \param [in/out]
3853  //! \param [out]
3854  //! \return Free Symmetry Feature
3855  //! \remark
3856 
3857 
3859 
3860 
3861  //! \brief Returns the reference geometry of the symmetry feature
3862  //! \param [in] Symmetry Feature
3863  //! \param [in/out]
3864  //! \param [out] Dtk_feat_geometry
3865  //! \return NOTOK if error, ISOK if ok
3866  //! \remark
3867 
3868  int get_reference (Dtk_feat_geometry**);
3869 
3870 };
3871 
3872 
3873 
3874 /**
3875 @brief Generic Translate Feature
3876 */
3877 
3879 {
3880 public:
3882  double distance;
3883 
3884 
3885  //! \brief Constructor of a direction translate Feature
3886  //! \param [in]
3887  //! \param [in/out]
3888  //! \param [out] Allocated direction translate feature
3889  //! \return
3890  //! \remark
3891 
3893 
3894 
3895  //! \brief Destructor a direction translate Feature
3896  //! \param [in] direction translate feature to destruct
3897  //! \param [in/out]
3898  //! \param [out]
3899  //! \return Free direction translate Feature
3900  //! \remark
3901 
3903 
3904 
3905  //! \brief Returns the direction of the translate feature
3906  //! \param [in] Direction Translate Feature
3907  //! \param [in/out]
3908  //! \param [out]
3909  //! \return NOTOK if error, ISOK if ok
3910  //! \remark
3911 
3913 
3914 
3915 
3916  //! \brief Returns The distance of the translate feature
3917  //! \param [in] Distance of the Translate Feature
3918  //! \param [in/out]
3919  //! \param [out]
3920  //! \return NOTOK if error, ISOK if ok
3921  //! \remark
3922 
3923  int get_distance ( double *);
3924 
3925 
3926 };
3927 
3928 
3929 
3931 {
3932 public:
3935 
3936 
3937 
3938  //! \brief Constructor of a Point to Point translate Feature
3939  //! \param [in]
3940  //! \param [in/out]
3941  //! \param [out] Allocated direction translate feature
3942  //! \return
3943  //! \remark
3944 
3946 
3947 
3948 
3949  //! \brief Destructor a point_to_point translate Feature
3950  //! \param [in] point_to_point translate feature to destruct
3951  //! \param [in/out]
3952  //! \param [out]
3953  //! \return Free point_to_point translate Feature
3954  //! \remark
3955 
3957 
3958 
3959 
3960  //! \brief Returns the start point of the translate feature
3961  //! \param [in] point_to_point Translate Feature
3962  //! \param [in/out]
3963  //! \param [out]
3964  //! \return NOTOK if error, ISOK if ok
3965  //! \remark
3966 
3968 
3969 
3970  //! \brief Returns the end point of the translate feature
3971  //! \param [in] point_to_point Translate Feature
3972  //! \param [in/out]
3973  //! \param [out]
3974  //! \return NOTOK if error, ISOK if ok
3975  //! \remark
3976 
3978 
3979 };
3980 
3981 
3983 {
3984 public:
3985  double X;
3986  double Y;
3987  double Z;
3988 
3990 
3991 
3992  //! \brief Constructor of a coordinates translate Feature
3993  //! \param [in]
3994  //! \param [in/out]
3995  //! \param [out] Allocated coordinates translate feature
3996  //! \return
3997  //! \remark
3998 
4000 
4001 
4002 
4003  //! \brief Destructor a coordinates translate Feature
4004  //! \param [in] coordinates translate feature to destruct
4005  //! \param [in/out]
4006  //! \param [out]
4007  //! \return Free coordinates translate Feature
4008  //! \remark
4009 
4011 
4012 
4013 
4014  //! \brief Returns the first coordinate value of the translate feature
4015  //! \param [in] Coordinates Translate Feature
4016  //! \param [in/out]
4017  //! \param [out]
4018  //! \return NOTOK if error, ISOK if ok
4019  //! \remark
4020 
4021  int get_X ( double *);
4022 
4023 
4024 
4025  //! \brief Returns the second coordinate value of the translate feature
4026  //! \param [in] Coordinates Translate Feature
4027  //! \param [in/out]
4028  //! \param [out]
4029  //! \return NOTOK if error, ISOK if ok
4030  //! \remark
4031 
4032 
4033  int get_Y ( double *);
4034 
4035 
4036 
4037  //! \brief Returns the Third coordinate value of the translate feature
4038  //! \param [in] Coordinates Translate Feature
4039  //! \param [in/out]
4040  //! \param [out]
4041  //! \return NOTOK if error, ISOK if ok
4042  //! \remark
4043 
4044 
4045 
4046  int get_Z ( double *);
4047 
4048 
4049  //! \brief Returns the Axis System of the coordinate translate feature
4050  //! \param [in] Axis System for the Translate Feature
4051  //! \param [in/out]
4052  //! \param [out]
4053  //! \return NOTOK if error, ISOK if ok
4054  //! \remark
4055 
4056 
4058 
4059 };
4060 
4061 
4063 {
4064 
4065 public:
4069 
4074  } entity;
4075 
4076 
4077  //! \brief Constructor of a generic translate Feature
4078  //! \param [in]
4079  //! \param [in/out]
4080  //! \param [out] Allocated generic translate feature
4081  //! \return
4082  //! \remark
4083 
4085 
4086 
4087 
4088  //! \brief Destructor a generic translate Feature
4089  //! \param [in] generic translate feature to destruct
4090  //! \param [in/out]
4091  //! \param [out]
4092  //! \return Free generic translate Feature
4093  //! \remark
4094 
4096 
4097 
4098 
4099  //! \brief Returns the type of the translate feature
4100  //! \param [in] Generic Translate Feature
4101  //! \param [in/out] TRANSLATE_TYPE
4102  //! \param [out]
4103  //! \return NOTOK if error, ISOK if ok
4104  //! \remark
4105 
4107 
4108 
4109  //! \brief Returns Direction translate entity
4110  //! \param [in] Generic Translate Feature
4111  //! \param [in/out]
4112  //! \param [out] Dtk_feat_translate_direction
4113  //! \return NOTOK if error, ISOK if ok
4114  //! \remark
4115 
4117 
4118 
4119  //! \brief Returns Point_to_point translate entity
4120  //! \param [in] Generic Translate Feature
4121  //! \param [in/out]
4122  //! \param [out] Dtk_feat_translate_point
4123  //! \return NOTOK if error, ISOK if ok
4124  //! \remark
4125 
4127 
4128 
4129 
4130  //! \brief Returns Coordinates translate entity
4131  //! \param [in] Generic Translate Feature
4132  //! \param [in/out]
4133  //! \param [out] Dtk_feat_translate_direction
4134  //! \return NOTOK if error, ISOK if ok
4135  //! \remark
4136 
4138 
4139 
4140  //! \brief Returns the boolean value that indicates if the translate feature is a surface feature
4141  //! \param [in] Generic Translate Feature
4142  //! \param [in/out]
4143  //! \param [out] bool
4144  //! \return NOTOK if error, ISOK if ok
4145  //! \remark
4146 
4148 
4149 
4150  //! \brief Returns the surface translate entity, the translate should be surface to be able to call this function
4151  //! \param [in] Generic Translate Feature
4152  //! \param [in/out]
4153  //! \param [out] Dtk_feat_surface_transfo
4154  //! \return NOTOK if error, ISOK if ok
4155  //! \remark
4156 
4158 };
4159 
4160 
4161 /**
4162 @brief Generic Rotate Feature
4163 */
4164 
4166 {
4167 public:
4169  double angle;
4170 
4171 
4172  //! \brief Constructor of a rotation with axis Feature
4173  //! \param [in]
4174  //! \param [in/out]
4175  //! \param [out] Allocated rotation with axis feature
4176  //! \return
4177  //! \remark
4178 
4180 
4181 
4182  //! \brief Destructor a rotation with axis Feature
4183  //! \param [in] rotation with axis feature to destruct
4184  //! \param [in/out]
4185  //! \param [out]
4186  //! \return Free rotation with axis Feature
4187  //! \remark
4188 
4190 
4191 
4192  //! \brief Returns the axis of the rotation feature
4193  //! \param [in] Rotation with Axis Feature
4194  //! \param [in/out]
4195  //! \param [out]
4196  //! \return NOTOK if error, ISOK if ok
4197  //! \remark
4198 
4200 
4201 
4202 
4203  //! \brief Returns The angle of the rotation feature
4204  //! \param [in] Angle of the rotation Feature
4205  //! \param [in/out]
4206  //! \param [out]
4207  //! \return NOTOK if error, ISOK if ok
4208  //! \remark
4209 
4210  int get_angle ( double *);
4211 
4212 
4213 };
4214 
4215 
4216 
4218 {
4219 public:
4223 
4224 
4225 
4226  //! \brief Constructor of a "Three Points" rotation Feature
4227  //! \param [in]
4228  //! \param [in/out]
4229  //! \param [out] Allocated "Three Points" rotation feature
4230  //! \return
4231  //! \remark
4232 
4234 
4235 
4236 
4237  //! \brief Destructor a a "Three Points" rotation Feature
4238  //! \param [in] pa "Three Points" rotation feature to destruct
4239  //! \param [in/out]
4240  //! \param [out]
4241  //! \return Free a "Three Points" rotation Feature
4242  //! \remark
4243 
4245 
4246 
4247 
4248  //! \brief Returns the first point of the rotation feature
4249  //! \param [in] "Three Points" rotation Feature
4250  //! \param [in/out]
4251  //! \param [out]
4252  //! \return NOTOK if error, ISOK if ok
4253  //! \remark
4254 
4256 
4257 
4258 
4259  //! \brief Returns the second point of the rotation feature
4260  //! \param [in] "Three Points" rotation Feature
4261  //! \param [in/out]
4262  //! \param [out]
4263  //! \return NOTOK if error, ISOK if ok
4264  //! \remark
4265 
4267 
4268 
4269  //! \brief Returns the third point of the rotation feature
4270  //! \param [in] "Three Points" rotation Feature
4271  //! \param [in/out]
4272  //! \param [out]
4273  //! \return NOTOK if error, ISOK if ok
4274  //! \remark
4275 
4277 
4278 };
4279 
4280 
4282 {
4283 public:
4284 
4286  Dtk_feat_geometry * first_element;
4287  Dtk_feat_geometry * second_element;
4288 
4289 
4290 
4291  //! \brief Constructor of a "Axis-Element" Rotation Feature
4292  //! \param [in]
4293  //! \param [in/out]
4294  //! \param [out] Allocated coordinates rotate feature
4295  //! \return
4296  //! \remark
4297 
4299 
4300 
4301 
4302  //! \brief Destructor a "Axis-Element" Rotation Feature
4303  //! \param [in] "Axis-Element" Rotation feature to destruct
4304  //! \param [in/out]
4305  //! \param [out]
4306  //! \return Free Axis-Element" Rotation Feature
4307  //! \remark
4308 
4310 
4311 
4312 
4313  //! \brief Returns the axis value of the rotate feature
4314  //! \param [in] Axis of the rotate Feature
4315  //! \param [in/out]
4316  //! \param [out]
4317  //! \return NOTOK if error, ISOK if ok
4318  //! \remark
4319 
4321 
4322 
4323 
4324  //! \brief Returns the first element of the rotate feature
4325  //! \param [in] "Axis-Element" Rotation Feature
4326  //! \param [in/out]
4327  //! \param [out]
4328  //! \return NOTOK if error, ISOK if ok
4329  //! \remark
4330 
4331 
4332  int get_first_element ( Dtk_feat_geometry **);
4333 
4334 
4335 
4336  //! \brief Returns the second element of the rotate feature
4337  //! \param [in] "Axis-Element" Rotation Feature
4338  //! \param [in/out]
4339  //! \param [out]
4340  //! \return NOTOK if error, ISOK if ok
4341  //! \remark
4342 
4343 
4344  int get_second_element ( Dtk_feat_geometry **);
4345 
4346 
4347 };
4348 
4349 
4351 {
4352 
4353 public:
4357 
4362  } entity;
4363 
4364 
4365  //! \brief Constructor of a generic rotate Feature
4366  //! \param [in]
4367  //! \param [in/out]
4368  //! \param [out] Allocated generic rotate feature
4369  //! \return
4370  //! \remark
4371 
4373 
4374 
4375 
4376  //! \brief Destructor a generic rotate Feature
4377  //! \param [in] generic rotate feature to destruct
4378  //! \param [in/out]
4379  //! \param [out]
4380  //! \return Free generic rotate Feature
4381  //! \remark
4382 
4384 
4385 
4386 
4387  //! \brief Returns the type of the rotate feature
4388  //! \param [in] Generic Rotate Feature
4389  //! \param [in/out] ROTATE_TYPE
4390  //! \param [out]
4391  //! \return NOTOK if error, ISOK if ok
4392  //! \remark
4393 
4395 
4396 
4397  //! \brief Returns Axis rotate entity
4398  //! \param [in] Generic rotate Feature
4399  //! \param [in/out]
4400  //! \param [out] Dtk_feat_rotate_axis
4401 
4402  //! \return NOTOK if error, ISOK if ok
4403  //! \remark
4404 
4406 
4407 
4408  //! \brief Returns "Three Points " rotate entity
4409  //! \param [in] Generic Rotate Feature
4410  //! \param [in/out]
4411  //! \param [out] Dtk_feat_rotate_points
4412 
4413  //! \return NOTOK if error, ISOK if ok
4414  //! \remark
4415 
4417 
4418 
4419 
4420  //! \brief Returns "Axis - Two Elements " rotate entity
4421  //! \param [in] Generic Rotate Feature
4422  //! \param [in/out]
4423  //! \param [out] Dtk_feat_rotate_axis_elements
4424 
4425  //! \return NOTOK if error, ISOK if ok
4426  //! \remark
4427 
4429 
4430 
4431  //! \brief Returns the boolean value that indicates if the rotate feature is a surface feature
4432  //! \param [in] Generic Rotate Feature
4433  //! \param [in/out]
4434  //! \param [out] bool
4435 
4436  //! \return NOTOK if error, ISOK if ok
4437  //! \remark
4438 
4440 
4441 
4442  //! \brief Returns the surface rotate entity, the rotate should be surface to be able to call this function
4443  //! \param [in] Generic Rotate Feature
4444  //! \param [in/out]
4445  //! \param [out] Dtk_feat_surface_transfo
4446 
4447  //! \return NOTOK if error, ISOK if ok
4448  //! \remark
4449 
4451 
4452 };
4453 
4454 
4456 public:
4457 
4458  Dtk_feat* main_body; // The body second operand from (subtract)|to (add)|with (intersect) which the operation boolean is applied
4459  Dtk_FeaturePtr combined_body; // The body feature on which the boolean operation is applied
4460  long nb_combined_bodies; // The number of the combined bodies as default it equals 1
4464 
4465 
4466 
4467  //! \brief Returns boolean operation type
4468  //! \param [in] Boolean Operation
4469  //! \param [in/out]
4470  //! \param [out] DTK_BOOLEAN_TYPE
4471  //! \return NOTOK if error, ISOK if ok
4472  //! \remark
4473 
4475 
4476 
4477 
4478  //! \brief Returns body feature operand consisting the combined body operand of the boolean operation
4479  //! \param [in] Boolean Operation
4480  //! \param [in/out]
4481  //! \param [out] Dtk_feat *
4482  //! \return NOTOK if error, ISOK if ok
4483  //! \remark
4484 
4486 
4487 
4488 
4489  //! \brief Returns body feature consisting the main body operand of the boolean operation
4490  //! \param [in] Boolean Operation
4491  //! \param [in/out]
4492  //! \param [out] Dtk_feat *
4493  //! \return NOTOK if error, ISOK if ok
4494  //! \remark
4495 
4497 
4498 
4499 
4500  //! \brief Returns number of the bodies involved in the combined feature body of the boolean operation
4501  //! \param [in] Boolean Operation
4502  //! \param [in/out]
4503  //! \param [out] long *
4504  //! \return NOTOK if error, ISOK if ok
4505  //! \remark
4506 
4508 
4509 };
4510 
4511 
4512 
4513 /**
4514 @brief Draft Neutral Element
4515 */
4517 
4518 public:
4519 
4520  Dtk_feat_geometry ** profiles;
4521 
4524 
4527 
4528 
4529 
4530 
4531  //! \brief Returns Neutral Propagation
4532  //! \param [in] Draft Neutral Element
4533  //! \param [in/out]
4534  //! \param [out] PROPAGATION_TYPE
4535  //! \return NOTOK if error, ISOK if ok
4536  //! \remark
4537 
4539 
4540 
4541 
4542 
4543 
4544  //! \brief Returns number of profiles of the neutral element
4545  //! \param [in] Draft Neutral Element
4546  //! \param [in/out]
4547  //! \param [out] int
4548  //! \return NOTOK if error, ISOK if ok
4549  //! \remark
4550 
4551  int get_profiles_nb ( int*);
4552 
4553 
4554  //! \brief Returns Neutral Element geometric List
4555  //! \param [in] Draft Neutral Element
4556  //! \param [in/out]
4557  //! \param [out] Dtk_feat_geometry *
4558  //! \return NOTOK if error, ISOK if ok
4559  //! \remark
4560 
4561  int get_profiles ( Dtk_feat_geometry***);
4562 
4563 
4564 };
4565 
4566 
4567 /**
4568 @brief Draft Side
4569 */
4571 
4572 public:
4573 
4575  double angle;
4577 
4580 
4581 
4582 
4583  //! \brief Returns the draft direction according to the specified draft side.
4584  //! \param [in] Draft Side
4585  //! \param [in/out]
4586  //! \param [out] DTK Axis
4587  //! \return NOTOK if error, ISOK if ok
4588  //! \remark
4589 
4590 
4592 
4593 
4594 
4595  //! \brief Returns Draft Side Angle
4596  //! \param [in] Draft Side
4597  //! \param [in/out]
4598  //! \param [out] double
4599  //! \return NOTOK if error, ISOK if ok
4600  //! \remark
4601 
4602  int get_angle ( double *);
4603 
4604 
4605 
4606  //! \brief Returns the draft neutral element
4607  //! \param [in] Draft Side
4608  //! \param [in/out]
4609  //! \param [out] Neutral Element
4610  //! \return NOTOK if error, ISOK if ok
4611  //! \remark
4612 
4614 
4615 };
4616 
4617 
4618 /**
4619 @brief Draft point
4620 */
4622 
4623 public:
4624 
4625 
4627  double angle;
4628  double ratio;
4629 
4632 
4633  Dtk_feat_geometry * elt; /* elt = parent edge if on_edge = DTK_TRUE
4634  geometric ID if on_edge = DTK_FALSE */
4635 
4638 
4639 
4640 
4641  //! \brief Returns Draft point
4642  //! \param [in] Draft point
4643  //! \param [in/out]
4644  //! \param [out] Dtk_pnt
4645  //! \return NOTOK if error, ISOK if ok
4646  //! \remark
4647 
4649 
4650  //! \brief Returns fillet point angle
4651  //! \param [in] Draft point angle
4652  //! \param [in/out]
4653  //! \param [out] double
4654  //! \return NOTOK if error, ISOK if ok
4655  //! \remark
4656 
4657  int get_angle ( double *);
4658 
4659  //! \brief Returns draft point ratio on attached edge
4660  //! \param [in] Draft point
4661  //! \param [in/out]
4662  //! \param [out] double
4663  //! \return NOTOK if error, ISOK if ok
4664  //! \remark
4665 
4666  int get_ratio ( double *);
4667 
4668 
4669 
4670  //! \brief Returns Draft point element
4671  //! \param [in] Draft point
4672  //! \param [in/out]
4673  //! \param [out] Dtk_feat_geometry
4674  //! \return NOTOK if error, ISOK if ok
4675  //! \remark
4676 
4677  int get_elt ( Dtk_feat_geometry **);
4678 
4679 
4680 
4681 } ;
4682 
4683 /**
4684 @brief Draft Parting Element
4685 */
4687 
4688 public:
4689 
4690  Dtk_feat_geometry * profile;
4693 
4696 
4697 
4698 
4699  //! \brief Returns Parting element geometry
4700  //! \param [in] Draft Parting Element
4701  //! \param [in/out]
4702  //! \param [out] Dtk_feat_geometry
4703  //! \return NOTOK if error, ISOK if ok
4704  //! \remark
4705 
4706  int get_profile ( Dtk_feat_geometry **);
4707 
4708 
4709  //! \brief Returns a bool variable indicating whether the parting element is equal the neutral element or not
4710  //! \param [in] Draft Parting Element
4711  //! \param [in/out]
4712  //! \param [out] Dtk_feat_geometry
4713  //! \return NOTOK if error, ISOK if ok
4714  //! \remark
4715 
4717 
4718 
4719  //! \brief Returns a boolean value whether parting element is applied over both or one side
4720  //! \param [in] Draft Parting Element
4721  //! \param [in/out]
4722  //! \param [out] Dtk_feat_geometry
4723  //! \return NOTOK if error, ISOK if ok
4724  //! \remark
4725 
4727 
4728 } ;
4729 
4730 
4731 
4732 /**
4733 @brief Generic Feature Standard Constant Draft
4734 */
4736 
4737 public:
4738 
4739 
4742 
4744 
4745 
4746 
4747  //! \brief Constructor of standard constant Draft Feature
4748  //! \param [in]
4749  //! \param [in/out]
4750  //! \param [out] Allocated constant draft feature
4751  //! \return
4752  //! \remark
4753 
4755 
4756 
4757  //! \brief Destructor of a draft feature
4758  //! \param [in] draft feature to destruct
4759  //! \param [in/out]
4760  //! \param [out]
4761  //! \return Free draft Feature
4762  //! \remark
4763 
4765 
4766 
4767 
4768  //! \brief Returns Constant Draft Form
4769  //! \param [in] Draft Feature
4770  //! \param [in/out]
4771  //! \param [out] DRAFT_FORM
4772  //! \return NOTOK if error, ISOK if ok
4773  //! \remark
4774 
4776 
4777 
4778 
4779  //! \brief Returns Constant Draft selection mode
4780  //! \param [in] Constant Draft Feature
4781  //! \param [in/out]
4782  //! \param [out] SELECTION_MODE
4783  //! \return NOTOK if error, ISOK if ok
4784  //! \remark
4785 
4787 
4788 
4789 
4790  //! \brief Returns the neutral element
4791  //! \param [in] Constant Draft Feature
4792  //! \param [in/out]
4793  //! \param [out] Dtk_feat_draft_neutral_element
4794  //! \return NOTOK if error, ISOK if ok
4795  //! \remark
4796 
4798 
4799 };
4800 
4801 /**
4802 @brief Generic Feature Standard Variable Draft
4803 */
4805 
4806 public:
4807 
4808 
4810 
4813 
4814 
4815 
4816 
4817  //! \brief Constructor of Variable Draft Feature
4818  //! \param [in]
4819  //! \param [in/out]
4820  //! \param [out] Allocated variable draft feature
4821  //! \return
4822  //! \remark
4823 
4825 
4826 
4827  //! \brief Destructor of a variable draft feature
4828  //! \param [in] variable draft feature to destruct
4829  //! \param [in/out]
4830  //! \param [out]
4831  //! \return Free variable draft Feature
4832  //! \remark
4833 
4835 
4836 
4837 
4838  //! \brief Returns the neutral elements
4839  //! \param [in] Variable Draft Feature
4840  //! \param [in/out]
4841  //! \param [out] Dtk_feat_draft_neutral_element
4842  //! \return NOTOK if error, ISOK if ok
4843  //! \remark
4844 
4846 
4847 
4848 
4849 
4850  //! \brief Returns array of draft points of a variable Draft
4851  //! \param [in] Variable Draft Feature
4852  //! \param [in/out]
4853  //! \param [out] Dtk_feat_draft_var_point
4854  //! \return NOTOK if error, ISOK if ok
4855  //! \remark
4856 
4858 
4859 
4860 
4861  //! \brief Returns number of draft points in a variable Draft
4862  //! \param [in] Variable Draft Feature
4863  //! \param [in/out]
4864  //! \param [out] int
4865  //! \return NOTOK if error, ISOK if ok
4866  //! \remark
4867 
4868  int get_var_points_nb ( int *);
4869 
4870 
4871 
4872 };
4873 
4874 
4875 
4876 /**
4877 @brief Feature Reflect Line Draft
4878 */
4880 
4881 public:
4882 
4883 
4884 
4885  //! \brief Constructor of reflect line Draft Feature
4886  //! \param [in]
4887  //! \param [in/out]
4888  //! \param [out] Allocated reflect line draft feature
4889  //! \return
4890  //! \remark
4891 
4893 
4894 
4895  //! \brief Destructor of a reflect line draft feature
4896  //! \param [in] advanced draft feature to destruct
4897  //! \param [in/out]
4898  //! \param [out]
4899  //! \return Free reflect line draft Feature
4900  //! \remark
4901 
4903 };
4904 
4905 
4906 /**
4907 @brief Feature Advanced Draft
4908 */
4910 
4911 public:
4912 
4913 
4917 
4919 
4922 
4923 
4924 
4925 
4926 
4927  //! \brief Constructor of advanced Draft Feature
4928  //! \param [in]
4929  //! \param [in/out]
4930  //! \param [out] Allocated advanced draft feature
4931  //! \return
4932  //! \remark
4933 
4935 
4936 
4937  //! \brief Destructor of an advanced draft feature
4938  //! \param [in] advanced draft feature to destruct
4939  //! \param [in/out]
4940  //! \param [out]
4941  //! \return Free advanced draft Feature
4942  //! \remark
4943 
4945 
4946 
4947 
4948 
4949  //! \brief Returns advanced Draft selection mode
4950  //! \param [in] Advanced Draft Feature
4951  //! \param [in/out]
4952  //! \param [out] SELECTION_MODE
4953  //! \return NOTOK if error, ISOK if ok
4954  //! \remark
4955 
4957 
4958 
4959 
4960  //! \brief Returns advanced Draft Driving Mode
4961  //! \param [in] Advanced Draft Feature
4962  //! \param [in/out]
4963  //! \param [out] DRIVING_MODE
4964  //! \return NOTOK if error, ISOK if ok
4965  //! \remark
4966 
4968 
4969 
4970 
4971  //! \brief Returns the driving side
4972  //! \param [in] Advanced Draft Feature
4973  //! \param [in/out]
4974  //! \param [out] DRIVING_SIDE
4975  //! \return NOTOK if error, ISOK if ok
4976  //! \remark
4977 
4979 
4980 
4981  //! \brief Returns Draft fitted parameter value
4982  //! \param [in] Advanced Draft Feature
4983  //! \param [in/out]
4984  //! \param [out] double
4985  //! \return NOTOK if error, ISOK if ok
4986  //! \remark
4987 
4988  int get_fitted_parameter ( double *);
4989 
4990 
4991 
4992  //! \brief Returns the advanced draft second side (one or two sides may be presented in an advanced draft)
4993  //! \param [in] Advanced Draft Feature
4994  //! \param [in/out]
4995  //! \param [out] Dtk_feat_draft_side
4996  //! \return NOTOK if error, ISOK if ok
4997  //! \remark
4998 
5000 
5001 
5002  //! \brief Returns array of draft's sides (one or two sides)
5003  //! \param [in] Advanced Draft Feature
5004  //! \param [in/out]
5005  //! \param [out] Dtk_feat_draft_neutral_element
5006  //! \return NOTOK if error, ISOK if ok
5007  //! \remark
5008 
5010 
5011 };
5012 
5013 
5014 
5015 /**
5016 @brief Generic Feature Draft
5017 */
5019 
5020 public:
5021 
5027 
5028  } entity;
5029 
5031  Dtk_feat_geometry **limiting_elements;
5033  Dtk_feat_geometry ** draft_faces;
5034 
5035  double default_angle;
5039 
5040 
5041 
5042 
5043  //! \brief Constructor of Draft Feature
5044  //! \param [in]
5045  //! \param [in/out]
5046  //! \param [out] Allocated draft feature
5047  //! \return
5048  //! \remark
5049 
5051 
5052 
5053  //! \brief Destructor of a draft feature
5054  //! \param [in] draft feature to destruct
5055  //! \param [in/out]
5056  //! \param [out]
5057  //! \return Free draft Feature
5058  //! \remark
5059 
5061 
5062 
5063 
5064 
5065  //! \brief Returns Draft Type
5066  //! \param [in] Draft Feature
5067  //! \param [in/out]
5068  //! \param [out] DRAFT_TYPE
5069  //! \return NOTOK if error, ISOK if ok
5070  //! \remark
5071 
5073 
5074 
5075 
5076  //! \brief Returns Draft default angle value applied in case of one side draft
5077  //! \param [in] Draft Feature
5078  //! \param [in/out]
5079  //! \param [out] double
5080  //! \return NOTOK if error, ISOK if ok
5081  //! \remark
5082 
5083  int get_default_angle ( double *);
5084 
5085 
5086  //! \brief Returns the default draft direction.
5087  //! \param [in] Draft Feature
5088  //! \param [in/out]
5089  //! \param [out] DTK Axis
5090  //! \return NOTOK if error, ISOK if ok
5091  //! \remark
5092 
5093 
5095 
5096 
5097 
5098  //! \brief Returns Parting element
5099  //! \param [in] Draft Feature
5100  //! \param [in/out]
5101  //! \param [out] Dtk_feat_draft_parting_element
5102  //! \return NOTOK if error, ISOK if ok
5103  //! \remark
5104 
5106 
5107 
5108 
5109  //! \brief Returns geometries of Draft faces in case of multi faces selection mode
5110  //! \param [in] Draft Feature
5111  //! \param [in/out]
5112  //! \param [out] Dtk_feat_geometry
5113  //! \return NOTOK if error, ISOK if ok
5114  //! \remark
5115 
5116  int get_draft_faces ( Dtk_feat_geometry ** *);
5117 
5118 
5119  //! \brief Returns number of Draft faces in case of multi faces selection mode
5120  //! \param [in] Draft Feature
5121  //! \param [in/out]
5122  //! \param [out] int
5123  //! \return NOTOK if error, ISOK if ok
5124  //! \remark
5125 
5126  int get_draft_faces_nb ( int *);
5127 
5128 
5129 
5130  //! \brief Returns profiles of limiting elements list
5131  //! \param [in] Draft Feature
5132  //! \param [in/out]
5133  //! \param [out] Dtk_feat_geometry
5134  //! \return NOTOK if error, ISOK if ok
5135  //! \remark
5136 
5137  int get_limiting_elements ( Dtk_feat_geometry ***);
5138 
5139 
5140 
5141  //! \brief Returns number of limiting elements list
5142  //! \param [in] Draft Feature
5143  //! \param [in/out]
5144  //! \param [out] int
5145  //! \return NOTOK if error, ISOK if ok
5146  //! \remark
5147 
5149 
5150 
5151 
5152  //! \brief Returns constant draft entity
5153  //! \param [in] Draft Feature
5154  //! \param [in/out]
5155  //! \param [out] Dtk_feat_draft_constant
5156  //! \return NOTOK if error, ISOK if ok
5157  //! \remark
5158 
5160 
5161 
5162  //! \brief Returns variable draft entity
5163  //! \param [in] Draft Feature
5164  //! \param [in/out]
5165  //! \param [out] Dtk_feat_draft_variable
5166  //! \return NOTOK if error, ISOK if ok
5167  //! \remark
5168 
5170 
5171 
5172  //! \brief Returns reflect line draft entity
5173  //! \param [in] Draft Feature
5174  //! \param [in/out]
5175  //! \param [out] Dtk_feat_draft_reflect_line
5176  //! \return NOTOK if error, ISOK if ok
5177  //! \remark
5178 
5180 
5181 
5182  //! \brief Returns advanced draft entity
5183  //! \param [in] Draft Feature
5184  //! \param [in/out]
5185  //! \param [out] Dtk_feat_draft_advanced
5186  //! \return NOTOK if error, ISOK if ok
5187  //! \remark
5188 
5190 
5191 
5192 };
5193 
5194 
5195 
5196 /**
5197 @brief Generic Feature Stiffener
5198 */
5200 
5201 public:
5202 
5203  Dtk_feat_geometry * profile;
5204 
5205  double thick1;
5206  double thick2;
5211 
5212 
5213 
5214  //! \brief Constructor of Stiffener Feature
5215  //! \param [in]
5216  //! \param [in/out]
5217  //! \param [out] Allocated stiffener feature
5218  //! \return
5219  //! \remark
5220 
5222 
5223 
5224  //! \brief Destructor of a Stiffener feature
5225  //! \param [in] Stiffener feature to destruct
5226  //! \param [in/out]
5227  //! \param [out]
5228  //! \return Free stiffener Feature
5229  //! \remark
5230 
5232 
5233 
5234 
5235 
5236  //! \brief Gets the profile of the stiffener feature
5237  //! \param [in] Stiffener feature
5238  //! \param [in/out]
5239  //! \param [out] Dtk_feat_geometry
5240  //! \return NOTOK if error, ISOK if ok
5241  //! \remark You need to test the type to get the inner feature
5242 
5243  int get_profile (Dtk_feat_geometry **);
5244 
5245 
5246 
5247 
5248  //! \brief Gets the mode of the stiffener feature
5249  //! \param [in] Stiffener feature
5250  //! \param [in/out]
5251  //! \param [out] STIFFENER_MODE
5252  //! \return NOTOK if error, ISOK if ok
5253  //! \remark You need to test the type to get the inner feature
5254 
5256 
5257 
5258 
5259  //! \brief Gets the first thickness of the stiffener feature
5260  //! \param [in] Stiffener feature
5261  //! \param [in/out]
5262  //! \param [out] double
5263  //! \return NOTOK if error, ISOK if ok
5264  //! \remark You need to test the type to get the inner feature
5265 
5266  int get_thick1 (double *);
5267 
5268 
5269 
5270  //! \brief Gets the second thickness of the stiffener feature
5271  //! \param [in] Stiffener feature
5272  //! \param [in/out]
5273  //! \param [out] double
5274  //! \return NOTOK if error, ISOK if ok
5275  //! \remark You need to test the type to get the inner feature
5276 
5277  int get_thick2 (double *);
5278 
5279 
5280 
5281  //! \brief Gets the neutral fiber boolean option of the stiffener feature
5282  //! \param [in] Stiffener feature
5283  //! \param [in/out]
5284  //! \param [out] Bool
5285  //! \return NOTOK if error, ISOK if ok
5286  //! \remark You need to test the type to get the inner feature
5287 
5289 
5290 
5291 
5292  //! \brief Gets the Thickness reverse direction boolean of the stiffener feature
5293  //! \param [in] Stiffener feature
5294  //! \param [in/out]
5295  //! \param [out] Bool
5296  //! \return NOTOK if error, ISOK if ok
5297  //! \remark You need to test the type to get the inner feature
5298 
5300 
5301 
5302 
5303  //! \brief Gets the Depth reverse direction boolean of the stiffener feature
5304  //! \param [in] Stiffener feature
5305  //! \param [in/out]
5306  //! \param [out] Bool
5307  //! \return NOTOK if error, ISOK if ok
5308  //! \remark You need to test the type to get the inner feature
5309 
5311 
5312 };
5313 
5314 
5315 
5316 
5317 /**
5318 @brief Generic Feature Scaling
5319 */
5321 
5322 public:
5323 
5324  Dtk_feat_geometry * reference;
5325  double ratio;
5326 
5327 
5328 
5329 
5330  //! \brief Constructor of Scaling Feature
5331  //! \param [in]
5332  //! \param [in/out]
5333  //! \param [out] Allocated Scaling feature
5334  //! \return
5335  //! \remark
5336 
5338 
5339 
5340  //! \brief Destructor of a Scaling feature
5341  //! \param [in] Scaling feature to destruct
5342  //! \param [in/out]
5343  //! \param [out]
5344  //! \return Free Scaling Feature
5345  //! \remark
5346 
5348 
5349 
5350 
5351 
5352  //! \brief Gets the geometric reference of the scaling feature
5353  //! \param [in] Scaling feature
5354  //! \param [in/out]
5355  //! \param [out] Dtk_feat_geometry
5356  //! \return NOTOK if error, ISOK if ok
5357  //! \remark You need to test the type to get the inner feature
5358 
5359  int get_reference (Dtk_feat_geometry **);
5360 
5361 
5362 
5363  //! \brief Gets the ratio of the scaling feature
5364  //! \param [in] Scaling feature
5365  //! \param [in/out]
5366  //! \param [out] double
5367  //! \return NOTOK if error, ISOK if ok
5368  //! \remark You need to test the type to get the inner feature
5369 
5370  int get_ratio (double *);
5371 
5372 
5373 };
5374 
5375 
5376 /**
5377 @brief Loft Section
5378 */
5380 
5381 public:
5382 
5383 
5384 
5385  Dtk_feat_geometry* sectionCurve;
5386  Dtk_feat_geometry* closingPoint;
5387 
5388  /* tangent ??? */
5389 
5390 
5393 
5394 
5395  //! \brief Returns loft section curve
5396  //! \param [in] Loft section entity
5397  //! \param [in/out]
5398  //! \param [out] Dtk_feat_geometry *
5399  //! \return NOTOK if error, ISOK if ok
5400  //! \remark
5401 
5402  int get_section_curve (Dtk_feat_geometry**);
5403 
5404 
5405  //! \brief Returns section closing point
5406  //! \param [in] Loft section entity
5407  //! \param [in/out]
5408  //! \param [out] Dtk_feat_geometry *
5409  //! \return NOTOK if error, ISOK if ok
5410  //! \remark
5411 
5412  int get_closing_point (Dtk_feat_geometry**);
5413 
5414 
5415 };
5416 
5417 /**
5418 @brief Loft Guide
5419 */
5421 
5422 public:
5423 
5424 
5425 
5426  Dtk_feat_geometry* guideCurve;
5428 
5429 
5432 
5433 
5434  //! \brief Returns loft guide curve
5435  //! \param [in] Loft guide entity
5436  //! \param [in/out]
5437  //! \param [out] Dtk_feat_geometry *
5438  //! \return NOTOK if error, ISOK if ok
5439  //! \remark
5440 
5441  int get_guide_curve (Dtk_feat_geometry**);
5442 
5443 
5444  //! \brief Returns loft guide dimension // 2 or 3
5445  //! \param [in] Loft guide entity
5446  //! \param [in/out]
5447  //! \param [out] int
5448  //! \return NOTOK if error, ISOK if ok
5449  //! \remark
5450 
5452 
5453 };
5454 
5455 
5456 
5457 
5458 /**
5459 @brief Loft Coupling
5460 */
5462 
5463 public:
5464 
5466  // int couplingPointsNb;
5469 
5472 
5473 
5474 
5475  //! \brief Returns Coupling type
5476  //! \param [in] Loft Feature
5477  //! \param [in/out]
5478  //! \param [out] COUPLING_TYPE
5479  //! \return NOTOK if error, ISOK if ok
5480  //! \remark
5481 
5482 
5484 
5485 
5486 
5487  //! \brief Returns array of loft coupling points
5488  //! \param [in] Loft Coupling element
5489  //! \param [in/out]
5490  //! \param [out] Dtk_tab <Dtk_feat_geometry*>
5491  //! \return NOTOK if error, ISOK if ok
5492  //! \remark
5493 
5495 
5496 
5497  //! \brief Returns number of loft coupling points
5498  //! \param [in] Loft Coupling element
5499  //! \param [in/out]
5500  //! \param [out] int
5501  //! \return NOTOK if error, ISOK if ok
5502  //! \remark
5503 
5504  int get_coupling_points_nb ( int *);
5505 
5506 
5507  //! \brief Returns loft coupling display boolean value
5508  //! \param [in] Loft coupling element entity
5509  //! \param [in/out]
5510  //! \param [out] Bool
5511  //! \return NOTOK if error, ISOK if ok
5512  //! \remark
5513 
5515 
5516 };
5517 
5518 
5519 
5520 /**
5521 @brief Generic Feature Loft
5522 */
5523 
5525 
5526 public:
5527 
5529  // int loftSectionNb;
5530 
5532  // int loftGuidesNb;
5533 
5535  Dtk_feat_geometry* spine;
5537  double deviation;
5538 
5543 
5544 
5545  //! \brief Constructor of Loft Feature
5546  //! \param [in]
5547  //! \param [in/out]
5548  //! \param [out] Allocated loft feature
5549  //! \return
5550  //! \remark
5551 
5553 
5554 
5555  //! \brief Destructor of a Loft feature
5556  //! \param [in] Loft feature to destruct
5557  //! \param [in/out]
5558  //! \param [out]
5559  //! \return Free Loft Feature
5560  //! \remark
5561 
5563 
5564 
5565 
5566 
5567  //! \brief Returns Loft type
5568  //! \param [in] Loft Feature
5569  //! \param [in/out]
5570  //! \param [out] DTK_LOFT_TYPE
5571  //! \return NOTOK if error, ISOK if ok
5572  //! \remark
5573 
5574 
5576 
5577 
5578 
5579  //! \brief Returns array of loft sections
5580  //! \param [in] Loft Feature
5581  //! \param [in/out]
5582  //! \param [out] Dtk_tab <Dtk_feat_loft_section*>
5583  //! \return NOTOK if error, ISOK if ok
5584  //! \remark
5585 
5587 
5588 
5589 
5590  //! \brief Returns number of Loft sections
5591  //! \param [in] Loft Feature
5592  //! \param [in/out]
5593  //! \param [out] int
5594  //! \return NOTOK if error, ISOK if ok
5595  //! \remark
5596 
5597  int get_sections_nb ( int *);
5598 
5599 
5600  //! \brief Returns array of loft guides
5601  //! \param [in] Loft Feature
5602  //! \param [in/out]
5603  //! \param [out] Dtk_tab <Dtk_feat_loft_guide*>
5604  //! \return NOTOK if error, ISOK if ok
5605  //! \remark
5606 
5608 
5609 
5610 
5611  //! \brief Returns number of Loft guides
5612  //! \param [in] Loft Feature
5613  //! \param [in/out]
5614  //! \param [out] int
5615  //! \return NOTOK if error, ISOK if ok
5616  //! \remark
5617 
5618  int get_guides_nb ( int *);
5619 
5620 
5621 
5622  //! \brief Returns loft coupling entity
5623  //! \param [in] Loft Feature
5624  //! \param [in/out]
5625  //! \param [out] Dtk_feat_loft_coupling*
5626  //! \return NOTOK if error, ISOK if ok
5627  //! \remark
5628 
5630 
5631 
5632 
5633  //! \brief Returns loft spine geometry
5634  //! \param [in] Loft Feature
5635  //! \param [in/out]
5636  //! \param [out] Dtk_feat_loft_coupling*
5637  //! \return NOTOK if error, ISOK if ok
5638  //! \remark
5639 
5640  int get_spine ( Dtk_feat_geometry **);
5641 
5642 
5643 
5644  //! \brief Returns boolean value whether the spine is automatically computed
5645  //! \param [in] Loft Feature
5646  //! \param [in/out]
5647  //! \param [out] Bool
5648  //! \return NOTOK if error, ISOK if ok
5649  //! \remark
5650 
5652 
5653 
5654  //! \brief Returns boolean value whether the loft is restricted from the start
5655  //! \param [in] Loft Feature
5656  //! \param [in/out]
5657  //! \param [out] Bool
5658  //! \return NOTOK if error, ISOK if ok
5659  //! \remark
5660 
5662 
5663 
5664  //! \brief Returns boolean value whether the loft is restricted from the start
5665  //! \param [in] Loft Feature
5666  //! \param [in/out]
5667  //! \param [out] Bool
5668  //! \return NOTOK if error, ISOK if ok
5669  //! \remark
5670 
5672 
5673 };
5674 
5675 
5676 /*
5677 @brief Generic Feature Loft
5678 
5679 
5680 
5681 class Dtk_feat_loft {
5682 
5683 public:
5684 
5685 
5686 Dtk_tab<Dtk_feat_geometry*> SectionCurve;
5687 int nb_sectionCurve;
5688 
5689 Dtk_tab<Dtk_feat_geometry*> SectionPoint;
5690 int nb_sectionPoint;
5691 
5692 Dtk_tab<Dtk_feat_geometry*> guide;
5693 int nb_guides;
5694 Dtk_tab<Dtk_feat_geometry*> pnt1;
5695 Dtk_tab<Dtk_feat_geometry*> pnt2;
5696 
5697 
5698 COUPLING_TYPE type;
5699 Dtk_tab<Dtk_feat_geometry*> coupling;
5700 Dtk_tab<Dtk_feat_geometry*> pnt_coupling;
5701 
5702 int nb_coupling;
5703 int nb_pnt_coupling;
5704 Bool Display_coupling;
5705 
5706 Dtk_feat_geometry * spine;
5707 int nb_spine;
5708 Bool computed_spine;
5709 
5710 Bool relimited_start_section;
5711 Bool relimited_end_section;
5712 
5713 double val_angular_correction;
5714 double val_deviation;
5715 
5716 
5717 int OperationType;
5718 Bool isPositiveLoft;
5719 Bool isNegativeLoft;
5720 
5721 Dtk_tab<int> GuidedCurve2D;
5722 
5723 Dtk_feat_loft();
5724 ~Dtk_feat_loft();
5725 };
5726 */
5727 
5728 
5729 
5731 
5732 public:
5735  // int defaultFacesNb;
5736 
5738  // int otherSkinsNb;
5739 
5740  /*
5741  double val_epaisseur;
5742  Dtk_tab<double> val_autre_epaisseur;
5743 
5744  Dtk_tab<Dtk_feat_geometry *> face_epaisseur;
5745  int nb_faces;
5746 
5747  Dtk_tab<Dtk_feat_geometry *> face_autre_epaisseur;
5748  int nb_faces_autres;*/
5749 
5750 
5751 
5752  //! \brief Constructor of Thickness Feature
5753  //! \param [in]
5754  //! \param [in/out]
5755  //! \param [out] Allocated Thickness feature
5756  //! \return
5757  //! \remark
5758 
5760 
5761 
5762  //! \brief Destructor of a Thickness feature
5763  //! \param [in] Thickness feature to destruct
5764  //! \param [in/out]
5765  //! \param [out]
5766  //! \return Free Thickness Feature
5767  //! \remark
5768 
5770 
5771 
5772 
5773  //! \brief Get the default thickness value of the feature Thickness
5774  //! \param [in] Thickness feature
5775  //! \param [in/out]
5776  //! \param [out] double
5777  //! \return Default Thickness value of Thickness Feature
5778  //! \remark
5779 
5780  int get_default_thickness (double *);
5781 
5782 
5783  //! \brief Get the number of thickened faces of the feature Thickness
5784  //! \param [in] Thickness feature
5785  //! \param [in/out]
5786  //! \param [out] int
5787  //! \return Number of thickened faces number of Thickness Feature
5788  //! \remark
5789 
5790  int get_nb_default_faces ( int *);
5791 
5792 
5793 
5794  //! \brief Returns the array of default faces geometry of the feature Thickness
5795  //! \param [in] Thickness feature
5796  //! \param [in/out]
5797  //! \param [out] Dtk_tab<Dtk_feat_geometry*> (Array of faces geometry)
5798  //! \return NOTOK if error, ISOK if ok
5799  //! \remark
5800 
5802 
5803 
5804 
5805  //! \brief Get the number of other skins (thickness for each skin) of the feature Thickness
5806  //! \param [in] Thickness feature
5807  //! \param [in/out]
5808  //! \param [out] int
5809  //! \return Number of skins of Thickness Feature
5810  //! \remark
5811 
5812  int get_nb_skins ( int *);
5813 
5814 
5815 
5816  //! \brief Get the array of skins (thickness for each skin) of the feature Thickness
5817  //! \param [in] Thickness feature
5818  //! \param [in/out]
5819  //! \param [out] Dtk_tab <Dtk_feat_thickness_face*>
5820  //! \return skins array of Thickness Feature
5821  //! \remark
5822 
5824 
5825 
5826 };
5827 
5828 
5829 
5830 /**
5831 @brief Multi prism domain
5832 */
5834 
5835 public:
5836 
5837  Dtk_feat_geometry * profile;
5840 
5843 
5844 
5845 
5846  //! \brief Returns the first limit of the prism domain feature.
5847  //! \param [in] Multi Prism domain Feature
5848  //! \param [in/out]
5849  //! \param [out] First Limit Feature
5850  //! \return NOTOK if error, ISOK if ok
5851  //! \remark
5852 
5853 
5855 
5856 
5857  //! \brief Returns the second limit of the prism domain feature.
5858  //! \param [in] Multi Prism domain Feature
5859  //! \param [in/out]
5860  //! \param [out] Second Limit Feature
5861  //! \return NOTOK if error, ISOK if ok
5862  //! \remark
5863 
5864 
5866 
5867 
5868 
5869 
5870  //! \brief Returns the profile internal component of the multi prism domain feature.
5871  //! \param [in] Multi Prism domain Feature
5872  //! \param [in/out]
5873  //! \param [out] Profile geometry
5874  //! \return NOTOK if error, ISOK if ok
5875  //! \remark
5876 
5877 
5878  int get_profile (Dtk_feat_geometry **);
5879 
5880 };
5881 
5882 /**
5883 @brief Multi Prism Feature : A repetition of Prism extrudes a profile along a specific direction.
5884 A Pad adds material, a Pocket removes material.
5885 */
5887 
5888 public:
5889 
5890  Dtk_feat_geometry * profiles;
5895  // int domainsNb;
5896 
5897 public :
5898 
5899 
5900  //! \brief Constructor of Multi Prism Feature
5901  //! \param [in/out]
5902  //! \param [out] Allocated Multi prism feature
5903  //! \return NOTOK if error, ISOK if ok
5904  //! \remark
5905 
5906 
5908 
5909  //! \brief Destructor of a Multi prism feature
5910  //! \param [in] Multi Prism feature to destruct
5911  //! \param [in/out]
5912  //! \param [out]
5913  //! \return Free Multi Prism Feature
5914  //! \remark
5915 
5916 
5918 
5919  //! \brief Returns Multi Prism type
5920  //! \param [in] Multi Prism Feature
5921  //! \param [in/out]
5922  //! \param [out] DTK_PRISM_TYPE
5923  //! \return NOTOK if error, ISOK if ok
5924  //! \remark
5925 
5926 
5928 
5929 
5930  //! \brief Returns the multi prism profiles internal component.
5931  //! \param [in] Multi Prism Feature
5932  //! \param [in/out]
5933  //! \param [out] Profile geometry
5934  //! \return NOTOK if error, ISOK if ok
5935  //! \remark
5936 
5937 
5938  int get_profiles (Dtk_feat_geometry **);
5939 
5940 
5941  //! \brief Returns the multi prism (extrusion or pocket) direction.
5942  //! \param [in] Multi Prism Feature
5943  //! \param [in/out]
5944  //! \param [out] DTK Axis
5945  //! \return NOTOK if error, ISOK if ok
5946  //! \remark
5947 
5948 
5950 
5951 
5952  //! \brief Returns the normal to surface.
5953  //! \param [in] Multi Prism Feature
5954  //! \param [in/out]
5955  //! \param [out] Bool
5956  //! \return NOTOK if error, ISOK if ok
5957  //! \remark
5958 
5959 
5961 
5962 
5963 
5964  //! \brief Returns the array of multi prism domains
5965  //! \param [in] Multi Prism Feature
5966  //! \param [in/out]
5967  //! \param [out] Dtk_tab <Dtk_feat_prism_domain*>
5968  //! \return NOTOK if error, ISOK if ok
5969  //! \remark
5970 
5971 
5973 
5974 
5975  //! \brief Returns the number of multi prism domains
5976  //! \param [in] Multi Prism Feature
5977  //! \param [in/out]
5978  //! \param [out] int
5979  //! \return NOTOK if error, ISOK if ok
5980  //! \remark
5981 
5982 
5983  int get_domains_nb (int*);
5984 
5985 
5986 };
5987 
5988 
5989 /* Body feature */
5991 
5992 public:
5993 
5996  //long inner_feat_nb;
5998  //Dtk_feat ** inner_feat_tab;
5999 
6000 
6001 
6002 
6003  //! \brief Constructor of a body feature
6004  //! \param [in/out]
6005  //! \param [out]
6006  //! \return Allocated body feature
6007  //! \remark
6008 
6009 
6011 
6012 
6013 
6014 
6015  //! \brief Destructor of a body feature
6016  //! \param [in] feature body to destruct
6017  //! \param [in/out]
6018  //! \param [out]
6019  //! \return Free body
6020  //! \remark
6021 
6023 
6024 
6025 
6026 
6027  //! \brief Gets the number of direct inner features
6028  //! \param [in] Body feature
6029  //! \param [in/out]
6030  //! \param [out] int
6031  //! \return NOTOK if error, ISOK if ok
6032  //! \remark You need to test the type to get the inner feature
6033 
6034  int get_inner_feat_nb (long *);
6035 
6036 
6037 
6038 
6039  //! \brief Get the body array containing pointers to direct inner features
6040  //! \param [in] Body
6041  //! \param [in/out]
6042  //! \param [out] Dtk_feat **
6043  //! \return NOTOK if error, ISOK if ok
6044  //! \remark
6045 
6047 
6048 
6049 
6050 
6051  //! \brief Get the body Visibility
6052  //! \param [in] Body
6053  //! \param [in/out]
6054  //! \param [out] Bool *
6055  //! \return NOTOK if error, ISOK if ok
6056  //! \remark
6057 
6059 
6060 
6061 
6062 
6063 
6064  //! \brief Get the body type (Solid or Surface)
6065  //! \param [in] Body
6066  //! \param [in/out]
6067  //! \param [out] DTK_BODY_TYPE *
6068  //! \return NOTOK if error, ISOK if ok
6069  //! \remark
6070 
6072 
6073 };
6074 
6075 typedef enum
6076 {
6084 
6086 
6088 {
6089 public:
6090 
6094  double doubleValue;
6097 
6099  {
6100  this->type = DTK_USER_DEFINED_NOVALUE;
6101  this->integerValue = -1;
6102  this->doubleValue = 0.0;
6103  this->geomConnector = NULL;
6104  }
6107  {
6108  this->role = inValue.role;
6109  this->type = inValue.type;
6110  this->integerValue = inValue.integerValue;
6111  this->doubleValue = inValue.doubleValue;
6112  this->stringValue = inValue.stringValue;
6113  this->geomConnector = inValue.geomConnector;
6114  }
6115 
6116  //! \brief Get the User Defined Value type (Double, Length, Angle, Int, GeomID, NoValue, etc.)
6117  //! \param [out] User Defined Type as DTK_USER_DEFINED_VAL_TYPE
6118  //! \return NOTOK if error, ISOK if ok
6119  //! \remark
6121 
6122  //! \brief Get the User Defined Value role, defined as the title of the value
6123  //! \param [out] User Defined role as Dtk_string
6124  //! \return NOTOK if error, ISOK if ok
6125  //! \remark
6126  int get_value_role (Dtk_string & outRole);
6127 
6128  //! \brief Get the User Defined Value
6129  //! \param [out] User Defined Value as double (for Double, Angle, Length)
6130  //! \return NOTOK if error, ISOK if ok
6131  //! \remark
6132  int get_value_double (double & outValue);
6133 
6134  //! \brief Get the User Defined Value
6135  //! \param [out] User Defined Value as Integer (for Integer and GeomID)
6136  //! \return NOTOK if error, ISOK if ok
6137  //! \remark
6138  int get_value_integer (int & outValue);
6139 
6140  //! \brief Get the User Defined Value
6141  //! \param [out] User Defined Type as String
6142  //! \return NOTOK if error, ISOK if ok
6143  //! \remark
6144  int get_value_string (Dtk_string & outValue);
6145 
6146  //! \brief Get the User Defined Value - Node Connector to retrieve geometric entities using _ReadConnectedEntity.
6147  //! \brief This method is available only for Dtk_Component/Dtk_Node based approach
6148  //! \param [out] User Defined Type as ID GEOM
6149  //! \return NOTOK if error, ISOK if ok
6150  //! \remark
6152 
6153 };
6154 
6156 {
6157 
6158 public:
6159 
6162 
6164 
6165 
6168 
6169  //! \brief Get the User Defined Feature type
6170  //! \param [out] User Defined Type defined with Dtk_string
6171  //! \return NOTOK if error, ISOK if ok
6172  //! \remark
6173 
6174  int get_type (Dtk_string & outType);
6175 
6176 
6177  //! \brief Get the User Defined Feature Name
6178  //! \param [out] User Defined Name as Dtk_string
6179  //! \return NOTOK if error, ISOK if ok
6180  //! \remark
6181 
6182  int get_name (Dtk_string & outName);
6183 
6184 
6185  //! \brief Get the User Defined Feature Value by its position
6186  //! \param [out] User Defined Feature as object of Dtk_feat_user_defined_value
6187  //! \return NOTOK if error, ISOK if ok
6188  //! \remark
6189 
6190  int get_user_defined_value_by_pos (int pos, Dtk_feat_user_defined_value & outUserDefinedValue);
6191 };
6192 
6193 
6195 {
6196 public:
6198  Dtk_feat_geometry* surfFeatGeometry;
6199 
6200  /* union dtk_feat_surf_feature
6201  {
6202  OFFSET SURFACE
6203  SURF_PAD
6204  SURF_REVOL
6205  etc...
6206  }*/
6207 
6208 
6209 
6210  //! \brief Constructor of a Surface Feature generic feature
6211  //! \param [in/out]
6212  //! \param [out]
6213  //! \return Allocated sheet Metal generic feature
6214  //! \remark
6215 
6216 
6218 
6219 
6220 
6221  //! \brief Destructor of a Surface Feature generic feature
6222  //! \param [in] Surface Feature Generic feature to destruct
6223  //! \param [in/out]
6224  //! \param [out]
6225  //! \return Free Surface Feature generic feature
6226  //! \remark Inner test to know which kind of surface feature to disallocate
6227 
6229 
6230 
6231 
6232  //! \brief Gets the Surface Feature type
6233  //! \param [in] Surface Feature Generic feature
6234  //! \param [in/out]
6235  //! \param [out] the Surface Feature type : enum DTK_SURF_FEATURE_TYPE
6236  //! \return NOTOK if error, ISOK if ok
6237  //! \remark You need to test the type to get the inner feature
6238 
6240 
6241 
6242 
6243  //! \brief Returns inner Surface feature's output geometry
6244  //! \param [in] Surface Feature Generic Feature
6245  //! \param [in/out]
6246  //! \param [out] Surface Feature Inner feature's output geometry
6247  //! \return NOTOK if error, ISOK if ok
6248  //! \remark
6249  int get_surf_feat_geometry (Dtk_feat_geometry **);
6250 
6251 };
6252 
6253 
6254 
6256 
6257 public:
6258 
6261  Dtk_feat_geometry * unFold_output_geometry;
6262 
6263 
6264  /*
6265  union dtk_feat_shm_type {
6266 
6267 
6268 
6269  } entity;*/
6270 
6271 
6272 
6273 
6274  //! \brief Constructor of a sheet Metal generic feature
6275  //! \param [in/out]
6276  //! \param [out]
6277  //! \return Allocated sheet Metal generic feature
6278  //! \remark
6279 
6280 
6282 
6283 
6284  //! \brief Destructor of a sheet Metal generic feature
6285  //! \param [in] Sheet Metal Generic feature to destruct
6286  //! \param [in/out]
6287  //! \param [out]
6288  //! \return Free sheet Metal generic feature
6289  //! \remark Inner test to know which kind of feature to disallocate
6290 
6292 
6293 
6294 
6295 
6296  //! \brief Gets the Sheet Metal feature type
6297  //! \param [in] Sheet Metal Generic feature
6298  //! \param [in/out]
6299  //! \param [out] the Sheet Metal feature type : enum DTK_SHM_FEATURE_TYPE
6300  //! \return NOTOK if error, ISOK if ok
6301  //! \remark You need to test the type to get the inner feature
6302 
6304 
6305 
6306 
6307 
6308  //! \brief Gets the Sheet Metal module type
6309  //! \param [in] Sheet Metal Module Generic feature
6310  //! \param [in/out]
6311  //! \param [out] DTK_SHM_MODULE_TYPE
6312  //! \return NOTOK if error, ISOK if ok
6313  //! \remark You need to test the type to get the inner feature
6314 
6316 
6317 
6318 
6319 
6320 
6321  //! \brief Returns inner Sheet Metal feature's unfolded output geometry
6322  //! \param [in] Sheet Metal Generic Feature
6323  //! \param [in/out]
6324  //! \param [out] Sheet Metal Inner feature's unfolded output geometry
6325  //! \return NOTOK if error, ISOK if ok
6326  //! \remark
6327 
6328  int get_unFold_output_geometry (Dtk_feat_geometry **);
6329 
6330 
6331 };
6332 
6333 
6334 /**
6335 @brief Neutral Fiber Segment :
6336 composed of the Start, End, and Center points
6337 or from a Spline Curve (in case of Elec3D Pipe)
6338 */
6339 
6341 public:
6342  typedef enum {
6351  DTK_BOTTOM_RIGHT
6352  }SECTION_SET_POINT;
6353 public:
6360  double _turnRadius; //correspond to the turnRadius after the segment
6362 
6365 
6366 
6367 
6368  //! \brief Returns fiber start Point
6369  //! \param [in]
6370  //! \param [out] Dtk_pnt
6371  //! \return NOTOK if error, ISOK if ok
6372  //! \remark
6373 
6374  DtkErrorStatus get_start_point ( Dtk_pnt & startPointOut) const;
6375 
6376  //! \brief Returns fiber End Point
6377  //! \param [in]
6378  //! \param [out] Dtk_pnt
6379  //! \return NOTOK if error, ISOK if ok
6380  //! \remark
6381 
6382  DtkErrorStatus get_end_point ( Dtk_pnt & endPointOut) const;
6383 
6384  //! \brief Returns fiber Center Point
6385  //! \param [in]
6386  //! \param [out] Dtk_pnt
6387  //! \return NOTOK if error, ISOK if ok
6388  //! \remark
6389 
6390  DtkErrorStatus get_center_point ( Dtk_pnt & centerPointOut) const;
6391 
6392  //! \brief Returns fiber Spline Curve
6393  //! \param [in]
6394  //! \param [out] Dtk_pnt
6395  //! \return NOTOK if error, ISOK if ok
6396  //! \remark
6397 
6399 
6400  //! \brief Returns pipe section set point
6401  //! \param [in]
6402  //! \param [in/out]
6403  //! \param [out] SECTION_SET_POINT
6404  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6405  //! \remark
6406 
6408 
6409  //! \brief Returns Pipe Turn Radius value
6410  //! \param [in]
6411  //! \param [out] double
6412  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6413  //! \remark
6414  DtkErrorStatus get_TurnRadius ( double & outTurnRadius) const;
6415 
6416  //! \brief Returns Orientation Plane
6417  //! \param [in]
6418  //! \param [out] double
6419  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6420  //! \remark
6422 
6423 };
6424 
6425 
6426 /**
6427 @brief Pipe Section
6428 */
6429 
6431 
6432 public:
6434  //Dtk_tab <Dtk_CurvePtr> fiberSet;
6435 
6436 
6437  //! \brief Constructor of Pipe Section
6438  //! \param [in/out]
6439  //! \param [out] Allocated Pipe Section
6440  //! \return
6441  //! \remark
6442 
6444 
6445 
6446  //! \brief Destructor of of Pipe Section
6447  //! \param [in] Pipe Section to destruct
6448  //! \param [in/out]
6449  //! \param [out]
6450  //! \return Free Pipe Section
6451  //! \remark
6452 
6454 
6455 
6456  //! \brief Get the set of the current section Profile
6457  //! \param [in] Section Profile Set
6458  //! \param [in/out]
6459  //! \param [out] Dtk_tab <Dtk_CurvePtr> &
6460  //! \return Error Status
6461  //! \remark
6462 
6464 
6465 
6466  //! \brief Get the set of the current set of section fiber
6467  //! \param [in] Section Fiber Set
6468  //! \param [in/out]
6469  //! \param [out] Dtk_tab <Dtk_CurvePtr> &
6470  //! \return Dtk_ErrorStatus
6471  //! \remark
6472 
6473  //Dtk_ErrorStatus get_fiber_set (Dtk_tab <Dtk_CurvePtr> & outFiberSet) const;
6474 
6475 
6476 
6477 };
6478 
6480 public:
6481 
6483 
6486 
6488 
6489  /* More Specified data */
6491  double _Height; // a section Height, defined if the section type is : Rectangular, Flat Oval, Radius Corner, and Double Ridge
6492  double _Width; // a section Width, defined if the section type is : Rectangular, Flat Oval, Radius Corner, and Double Ridge
6493  double _Diameter; // a section Diameter, defined if the section type is : Round
6494  double _CornerRadius; // a section Diameter, defined if the section type is : Radius Corner
6495 
6498 
6501 
6504 
6505  //! \brief Returns pipe feature type
6506  //! \param [in] Pipe Feature
6507  //! \param [in/out]
6508  //! \param [out] DTK_PIPE_TYPE
6509  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6510  //! \remark
6511 
6513 
6514 
6515  //! \brief Returns Pipe start Point
6516  //! \param [in]
6517  //! \param [out] Dtk_pnt
6518  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6519  //! \remark
6520 
6521  DtkErrorStatus get_start_point ( Dtk_pnt & outStartPoint) const;
6522 
6523  //! \brief Returns Pipe End Point
6524  //! \param [in]
6525  //! \param [out] Dtk_pnt
6526  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6527  //! \remark
6528 
6529  DtkErrorStatus get_end_point ( Dtk_pnt & outEndPoint) const;
6530 
6531 
6532 
6533  //! \brief Returns pipe section type
6534  //! \param [in] Pipe Feature
6535  //! \param [in/out]
6536  //! \param [out] DTK_PIPE_SECTION_TYPE
6537  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6538  //! \remark
6539 
6541 
6542 
6543  //! \brief Returns Pipe start Section
6544  //! \param [in]
6545  //! \param [out] Dtk_Pipe_Section
6546  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6547  //! \remark
6548 
6550 
6551  //! \brief Returns Pipe End Section
6552  //! \param [in]
6553  //! \param [out] Dtk_Pipe_Section
6554  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6555  //! \remark
6556 
6558 
6559 
6560  //! \brief Returns Pipe is closed boolean
6561  //! \param [in]
6562  //! \param [out] Dtk_bool
6563  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6564  //! \remark
6565 
6566  DtkErrorStatus get_is_closed ( Dtk_bool & outIsClosed) const;
6567 
6568 
6569  //! \brief Returns Pipe Section Height (Available for Rectangular, Flat Oval, Radius Corner and Double Ridge Section)
6570  //! \param [in]
6571  //! \param [out] double
6572  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6573  //! \remark
6574  DtkErrorStatus get_Height ( double & outHeight) const;
6575 
6576 
6577  //! \brief Returns Pipe Section Width (Available for Rectangular, Flat Oval, Radius Corner and Double Ridge Section)
6578  //! \param [in]
6579  //! \param [out] double
6580  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6581  //! \remark
6582  DtkErrorStatus get_Width ( double & outWidth) const;
6583 
6584  //! \brief Returns Pipe Section Diameter (Available for Round Section)
6585  //! \param [in]
6586  //! \param [out] double
6587  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6588  //! \remark
6589  DtkErrorStatus get_Diameter ( double & outDiameter) const;
6590 
6591 
6592  //! \brief Returns Pipe Section Radius (Available for Radius Corner Section)
6593  //! \param [in]
6594  //! \param [out] double
6595  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6596  //! \remark
6597  DtkErrorStatus get_CornerRadius ( double & outCornerRadius) const;
6598 
6599  //! \brief Returns Table of Pipe Nodes
6600  //! \param [in]
6601  //! \param [out] Dtk_tab <Dtk_pnt>&
6602  //! \return dtkErrorUnspecified if error, dtkNoError if ok
6603  //! \remark
6605 
6606  //! \brief Get the set of the current segments of the neutral fiber
6607  //! \param [in] Section Profile Set
6608  //! \param [in/out]
6609  //! \param [out] Dtk_tab <Dtk_pipe_fiber_segment*> &
6610  //! \return Error Status
6611  //! \remark
6613 };
6614 
6615 
6616 
6617 /**
6618 @brief Spot Point (the node in the tree structure storing joint element features)
6619 */
6621 {
6622 public:
6623 
6625  {
6628  Sealant
6629  };
6630 
6632  {
6641 
6645 
6648  Unspecified_Sealant
6649  };
6650 
6652  {
6658  };
6659 
6661  {
6666  Unspecified_Robustness
6667  };
6668 
6670  {
6674  Unspecified_Regulation
6675  };
6676 
6677  enum Finish
6678  {
6683  Unspecified_Finish
6684  };
6685 
6686  //! \brief Default Constructor
6688 
6689  //! \brief Copy Constructor
6691 
6692  //! \brief Parameters Constructor
6693  //! \param p_location : SpotPoint location
6694  //! \param p_normal : SpotPoint normal
6695  //! \param p_diameter : SpotPoint diameter
6696  //! \param p_category : SpotPoint category
6697  //! \param p_type : SpotPoint type
6698  //! \param p_robustness : SpotPoint robustness
6699  //! \param p_regulation : SpotPoint regulation
6700  //! \param p_finish : SpotPoint finish
6701  //! \remark in Debug throw an exception if type doesn't match category
6702  Dtk_feat_SpotPoint(const Dtk_pnt & p_location,
6703  const Dtk_dir & p_normal,
6704  double p_diameter,
6705  ProcessCategory p_category,
6706  ProcessType p_type,
6707  Robustness p_robustness,
6708  Regulation p_regulation,
6709  Finish p_finish
6710  );
6711 
6712 
6713  //! \brief Parameters Constructor
6714  //! \param p_location : SpotPoint location
6715  //! \param p_normal : SpotPoint normal
6716  //! \param p_diameter : SpotPoint diameter
6717  //! \param p_category : SpotPoint category
6718  //! \param p_type : SpotPoint type
6719  //! \param p_robustness : SpotPoint robustness
6720  //! \param p_regulation : SpotPoint regulation
6721  //! \param p_finish : SpotPoint finish
6722  //! \param p_material : SpotPoint material
6723  //! \remark in Debug throw an exception if type doesn't match category, idem for material
6724  Dtk_feat_SpotPoint(const Dtk_pnt & p_location,
6725  const Dtk_dir & p_normal,
6726  double p_diameter,
6727  ProcessCategory p_category,
6728  ProcessType p_type,
6729  Robustness p_robustness,
6730  Regulation p_regulation,
6731  Finish p_finish,
6732  Material p_material
6733  );
6734 
6735  //! \brief Destructor
6737 
6738  //! \brief Assignment operator
6739  Dtk_feat_SpotPoint & operator= (const Dtk_feat_SpotPoint & spot);
6740 
6741  //! \brief Return SpotPoint location
6743  //! \brief Set SpotPoint location
6744  void setLocation(const Dtk_pnt & p_location);
6745  //! \brief Returns SpotPoint location
6746  void setLocation(double x, double y, double z);
6747 
6748  //! \brief Return SpotPoint normal
6749  Dtk_dir normal() const;
6750  //! \brief Set SpotPoint normal
6751  void setNormal(const Dtk_dir & p_normal);
6752  //! \brief Set SpotPoint normal
6753  void setNormal(double x, double y, double z);
6754 
6755  //! \brief Return SpotPoint diameter
6756  double diameter() const;
6757  //! \brief Set SpotPoint diameter
6758  void setDiameter(double p_diam);
6759 
6760  //! \brief Return SpotPoint inspection flag
6761  bool isInspectionFlag() const;
6762  //! \brief Set SpotPoint inspection flag
6763  void setInspectionFlag(bool p_flag);
6764 
6765  //! \brief Return SpotPoint geometry flag
6766  //! \remark only available with Welding
6767  bool isGeometryFlag() const;
6768  //! \brief Set SpotPoint geometry flag
6769  //! \remark only available with Welding
6770  void setGeometryFlag(bool p_flag);
6771 
6772  //! \brief Return SpotPoint category
6774  //! \brief Set SpotPoint category
6776  //! \brief Set SpotPoint category
6777  void setProcessCategory(Dtk_string const & p_category);
6778 
6779  //! \brief Return SpotPoint type
6781  //! \brief Set SpotPoint type
6782  //! \remark on Debug throw an exception if type doesn't match category
6784  //! \brief Set SpotPoint type
6785  //! \remark on Debug throw an exception if type doesn't match category
6786  void setProcessType(Dtk_string const & p_type);
6787 
6788  //! \brief Return SpotPoint regulation
6790  //! \brief Set SpotPoint robustness
6791  void setRobustness(Robustness p_robustness);
6792  //! \brief Set SpotPoint robustness
6793  void setRobustness(Dtk_string const & p_robustness);
6794 
6795  //! \brief Return SpotPoint regulation
6797  //! \brief Set SpotPoint regulation
6798  void setRegulation(Regulation p_regulation);
6799  //! \brief Set SpotPoint regulation
6800  void setRegulation(Dtk_string const & p_regulation);
6801 
6802  //! \brief Return SpotPoint finish
6803  Finish finish() const;
6804  //! \brief Set SpotPoint finish
6805  void setFinish(Finish p_finish);
6806  //! \brief Set SpotPoint finish
6807  void setFinish(Dtk_string const & p_finish);
6808 
6809  //! \brief Return SpotPoint material
6811  //! \brief Set SpotPoint material
6812  //! \remark in Debug throw an exception if it's Welding category
6813  void setMaterial(Material p_material);
6814  //! \brief Set SpotPoint material
6815  //! \remark in Debug throw an exception if it's Welding category
6816  void setMaterial(Dtk_string const & p_material);
6817 
6818  //! \brief Return SpotPoint manufacturing code
6820  //! \brief Set SpotPoint manufacturing code
6821  void setManufacturingCode(const Dtk_string & p_code);
6822 
6823 private:
6824 
6825  Dtk_pnt m_location;
6826 
6827  Dtk_dir m_normal;
6828 
6829  Dtk_string m_manufacturing_code;
6830 
6831  double m_diameter;
6832 
6833  ProcessCategory m_category;
6834 
6835  ProcessType m_type;
6836 
6837  Robustness m_robustness;
6838 
6839  Regulation m_regulation;
6840 
6841  Finish m_finish;
6842 
6843  Material m_material;
6844 
6845  bool m_flag_inspection;
6846 
6847  bool m_flag_geometry;
6848 
6849 };
6850 
6851 
6852 /**
6853 @brief Generic Feature
6854 All metric data in feature classes are given in MM
6855 All angular data are given in degree
6856 */
6857 
6858 
6859 class Dtk_feat : public Dtk_Entity {
6860 
6861 protected:
6862  // struct Dtk_Handle; // Not defined here
6863  // Dtk_Handle *_Private; // Handle
6864  enum {
6865  _typeID = DTK_TYPE_FEATURE
6866  };
6867 
6868 
6869 
6870  inline virtual Dtk_Object* Clone() { return new Dtk_feat(*this); }
6871  friend class Dtk_SmartPtr<Dtk_feat>;
6872 
6873 
6874 private:
6875  void _Init();
6876  void _Copy(const Dtk_feat &s);
6877  void _Reset();
6878 
6879 public:
6881  long id;
6882  long body_id;
6883  //wchar_t * name;
6885  Dtk_feat_geometry * input_geometry;
6886  Dtk_feat_geometry * output_geometry;
6887  Dtk_feat_geometry * associated_geometry;
6888  Dtk_feat_geometry * final_associated_geometry;
6889  bool isActive;
6890 
6891  union dtk_feat_type {
6892 
6893  /* Dress-up Features */
6903 
6904 
6905 
6906  /* Sketch-based Features */
6916 
6917 
6918 
6919  /* Surface-based Features */
6924 
6925  /* Transformation Features */
6934 
6935  /* Boolean operations */
6937 
6938  /* Feature Body*/
6940 
6941  /*Sheet Metal */
6943 
6944  /* Surface Features*/
6946 
6947  /* User defined features */
6949 
6950  /* Piping and Tubing Feature*/
6952 
6953  /*Spot Point*/
6955 
6956  } entity;
6957 
6958  //! \brief BaseConstructor of a generic feature
6959  //! \param [in/out]
6960  //! \param [out]
6961  //! \return Allocated generic feature
6962  //! \remark
6964 
6965  //! \CopyConstructor{const Dtk_feat&}
6966  Dtk_feat( const Dtk_feat&s );
6967 
6968  //! \brief BaseDestructor of a generic feature
6969  //! \param [in] Generic feature to destruct
6970  //! \param [in/out]
6971  //! \param [out]
6972  //! \return Free generic feature
6973  //! \remark Inner test to know which kind of feature to disallocate
6975 
6976  //! \DtkDynamicType
6978  {
6979  if (inId == _typeID)
6980  {
6981  return 1;
6982  }
6983  return Dtk_Entity::DtkDynamicType(inId);
6984  }
6985 
6986  //! \DtkDynamicCast
6988  {
6989  if(s->DtkDynamicType(_typeID))
6990  return static_cast<Dtk_feat*>(s);
6991  return NULL;
6992  }
6993 
6994  //! \return The type of the entity type - DTK_TYPE_FEATURE -
6996 
6997  //! \CreateBase
6999 
7001 
7002  //! \brief Delete object
7004 
7005  //! \brief Gets the feature type
7006  //! \param [in] Generic feature
7007  //! \param [in/out]
7008  //! \param [out] the feature type : enum DTK_FEATURE_TYPE
7009  //! \return NOTOK if error, ISOK if ok
7010  //! \remark You need to test the type to get the inner feature
7011 
7013  DTK_FEATURE_TYPE GetType() const {return type;}
7014 
7016  //int get_id (long *);
7017 
7018 
7019  //! \brief Returns the feature name
7020  //! \param [in] Generic Feature
7021  //! \param [in/out]
7022  //! \param [out] Feature Name
7023  //! \return NOTOK if error, ISOK if ok
7024  //! \remark
7026  Dtk_string GetName() const {return name;}
7027 
7028 
7029  int GetId() const {return id;}
7030 
7031  //! \brief Returns inner feature's basis geometry
7032  //! \param [in] Generic Feature
7033  //! \param [in/out]
7034  //! \param [out] Inner feature's geometry
7035  //! \return NOTOK if error, ISOK if ok
7036  //! \remark
7037 
7038  int get_input_geometry (Dtk_feat_geometry **);
7039  Dtk_feat_geometry *GetInputGeometry()const{return input_geometry;}
7040 
7041  //! \brief Returns inner feature's output geometry
7042  //! \param [in] Generic Feature
7043  //! \param [in/out]
7044  //! \param [out] Inner feature's output geometry
7045  //! \return NOTOK if error, ISOK if ok
7046  //! \remark
7047 
7048  int get_output_geometry (Dtk_feat_geometry **);
7049  Dtk_feat_geometry *GetOutputGeometry()const{return output_geometry;}
7050 
7051  //! \brief Returns inner feature's associated geometry
7052  //! \param [in] Generic Feature
7053  //! \param [in/out]
7054  //! \param [out] Inner feature's associated geometry
7055  //! \return NOTOK if error, ISOK if ok
7056  //! \remark
7057 
7058  int get_associated_geometry (Dtk_feat_geometry **);
7059  Dtk_feat_geometry *GetAssociatedGeometry()const{return associated_geometry;}
7060 
7061 
7062  //! \brief Returns inner feature's final associated geometry, i.e. geometry that appears on the final Brep model
7063  //! \param [in] Generic Feature
7064  //! \param [in/out]
7065  //! \param [out] Inner feature's final associated geometry
7066  //! \return NOTOK if error, ISOK if ok
7067  //! \remark
7068 
7069  int get_final_associated_geometry (Dtk_feat_geometry **);
7070  Dtk_feat_geometry *GetFinalAssociatedGeometry()const{return final_associated_geometry;}
7071 
7072 
7073  //! \brief Returns inner feature's activation status
7074  //! \param [in] Generic Feature
7075  //! \param [in/out]
7076  //! \param [out] Inner feature's activation status (bool)
7077  //! \return NOTOK if error, ISOK if ok
7078  //! \remark
7079 
7080  int get_isActive (bool *);
7081  Dtk_bool IsActive() const {return isActive;}
7082 
7083 
7084 
7085  //! \brief Returns feature's inner Hole Feature
7086  //! \param [in] Generic Feature
7087  //! \param [in/out]
7088  //! \param [out] Hole Feature
7089  //! \return NOTOK if error, ISOK if ok
7090  //! \remark You should test Generic Feature type before call
7091 
7093  Dtk_feat_hole *GetHole()const{return entity.hole;}
7094  Dtk_feat_hole_series *GetHoleSeries()const{return entity.hole_series;}
7095  Dtk_feat_udf *GetUdf()const{return entity.udf;}
7096 
7097 
7098  //! \brief Returns feature's inner Thread Feature
7099  //! \param [in] Generic Feature
7100  //! \param [in/out]
7101  //! \param [out] Thread Feature
7102  //! \return NOTOK if error, ISOK if ok
7103  //! \remark You should test Generic Feature type before call
7104 
7106  Dtk_feat_thread *GetThread()const{return entity.thread;}
7107 
7108 
7109 
7110  //! \brief Returns feature's inner Shell Feature
7111  //! \param [in] Generic Feature
7112  //! \param [in/out]
7113  //! \param [out] Shell Feature
7114  //! \return NOTOK if error, ISOK if ok
7115  //! \remark You should test Generic Feature type before call
7116 
7118  Dtk_feat_shell *GetShell()const{return entity.shell;}
7119 
7120 
7121  //! \brief Returns feature's inner Fillet Feature
7122  //! \param [in] Generic Feature
7123  //! \param [in/out]
7124  //! \param [out] Fillet Feature
7125  //! \return NOTOK if error, ISOK if ok
7126  //! \remark You should test Generic Feature type before call
7127 
7129  Dtk_feat_fillet *GetFillet()const{return entity.fillet;}
7130 
7131 
7132 
7133  //! \brief Returns feature's inner Face Fillet Feature
7134  //! \param [in] Generic Feature
7135  //! \param [in/out]
7136  //! \param [out] Face Fillet Feature
7137  //! \return NOTOK if error, ISOK if ok
7138  //! \remark You should test Generic Feature type before call
7139 
7141  Dtk_feat_face_fillet *GetFaceFillet()const{return entity.face_fillet;}
7142 
7143 
7144 
7145  //! \brief Returns feature's inner Tri-tangent Fillet Feature
7146  //! \param [in] Generic Feature
7147  //! \param [in/out]
7148  //! \param [out] Face Fillet Feature
7149  //! \return NOTOK if error, ISOK if ok
7150  //! \remark You should test Generic Feature type before call
7151 
7153  Dtk_feat_tritangent_fillet *GetTriTangentFillet()const{return entity.tritangent_fillet;}
7154 
7155 
7156 
7157 
7158  //! \brief Returns feature's inner Prism Feature (PAD|POCKET)
7159  //! \param [in] Generic Feature
7160  //! \param [in/out]
7161  //! \param [out] Prism Feature
7162  //! \return NOTOK if error, ISOK if ok
7163  //! \remark You should test Generic Feature type before call
7164 
7166  Dtk_feat_prism *GetPrism()const{return entity.prism;}
7167 
7168 
7169 
7170 
7171  //! \brief Returns feature's inner Multi Prism Feature (MULTI_PAD|MULTI_POCKET)
7172  //! \param [in] Generic Feature
7173  //! \param [in/out]
7174  //! \param [out] Multi Prism Feature
7175  //! \return NOTOK if error, ISOK if ok
7176  //! \remark You should test Generic Feature type before call
7177 
7179  Dtk_feat_multi_prism *GetMultiPrism()const{return entity.multi_prism;}
7180 
7181 
7182 
7183  //! \brief Returns feature's inner Revol Feature (SHAFT|GROOVE)
7184  //! \param [in] Generic Feature
7185  //! \param [in/out]
7186  //! \param [out] Revol Feature
7187  //! \return NOTOK if error, ISOK if ok
7188  //! \remark You should test Generic Feature type before call
7189 
7191  Dtk_feat_revol *GetRevol()const{return entity.revol;}
7192 
7193 
7194  //! \brief Returns feature's inner Sweep Feature (RIB|SLOT)
7195  //! \param [in] Generic Feature
7196  //! \param [in/out]
7197  //! \param [out] Sweep Feature
7198  //! \return NOTOK if error, ISOK if ok
7199  //! \remark You should test Generic Feature type before call
7200 
7202  Dtk_feat_sweep *GetSweep()const{return entity.sweep;}
7203 
7204 
7205  //! \brief Returns feature's inner Chamfer Feature
7206  //! \param [in] Generic Feature
7207  //! \param [in/out]
7208  //! \param [out] Chamfer Feature
7209  //! \return NOTOK if error, ISOK if ok
7210  //! \remark You should test Generic Feature type before call
7211 
7213  Dtk_feat_chamfer *GetChamfer()const{return entity.chamfer;}
7214 
7215 
7216 
7217  //! \brief Returns feature's inner Draft Feature
7218  //! \param [in] Generic Feature
7219  //! \param [in/out]
7220  //! \param [out] Draft Feature
7221  //! \return NOTOK if error, ISOK if ok
7222  //! \remark You should test Generic Feature type before call
7223 
7225  Dtk_feat_draft *GetDraft()const{return entity.draft;}
7226 
7227 
7228 
7229  //! \brief Returns feature's inner mirror feature
7230  //! \param [in] Generic Feature
7231  //! \param [in/out]
7232  //! \param [out] Mirror Feature
7233  //! \return NOTOK if error, ISOK if ok
7234  //! \remark You should test Generic Feature type before call
7235 
7237  Dtk_feat_mirror *GetMirror()const{return entity.mirror;}
7238 
7239 
7240 
7241  //! \brief Returns feature's inner pattern feature (Rectangular & Circular)
7242  //! \param [in] Generic Feature
7243  //! \param [in/out]
7244  //! \param [out] pattern Feature (Rectangular & Circular)
7245  //! \return NOTOK if error, ISOK if ok
7246  //! \remark You should test Generic Feature type before call
7247 
7249  Dtk_feat_pattern *GetPattern()const{return entity.pattern;}
7250 
7251 
7252 
7253 
7254  //! \brief Returns feature's inner user pattern feature
7255  //! \param [in] Generic Feature
7256  //! \param [in/out]
7257  //! \param [out] user pattern Feature
7258  //! \return NOTOK if error, ISOK if ok
7259  //! \remark You should test Generic Feature type before call
7260 
7262  Dtk_feat_user_pattern *GetUserPattern()const{return entity.user_pattern;}
7263 
7264 
7265 
7266  //! \brief Returns feature's inner boolean operation feature
7267  //! \param [in] Generic Feature
7268  //! \param [in/out]
7269  //! \param [out] boolean Operation Feature
7270  //! \return NOTOK if error, ISOK if ok
7271  //! \remark You should test Generic Feature type before call
7272 
7274  Dtk_feat_boolean *GetBooleanOperation()const{return entity.boolean_op;}
7275 
7276 
7277 
7278  //! \brief Returns feature's body
7279  //! \param [in] Generic Feature
7280  //! \param [in/out]
7281  //! \param [out] Body Feature
7282  //! \return NOTOK if error, ISOK if ok
7283  //! \remark You should test Generic Feature type before call
7284 
7286  Dtk_feat_body *GetFeatBody()const{return entity.body;}
7287 
7288 
7289 
7290  //! \brief Returns feature's inner split surface feature
7291  //! \param [in] Generic Feature
7292  //! \param [in/out]
7293  //! \param [out] Split Surface Feature
7294  //! \return NOTOK if error, ISOK if ok
7295  //! \remark You should test Generic Feature type before call
7296 
7298  Dtk_feat_split_surf *GetSplitSurface()const{return entity.split;}
7299 
7300 
7301 
7302 
7303  //! \brief Returns feature's inner close (fill) surface feature
7304  //! \param [in] Generic Feature
7305  //! \param [in/out]
7306  //! \param [out] Close Surface Feature
7307  //! \return NOTOK if error, ISOK if ok
7308  //! \remark You should test Generic Feature type before call
7309 
7311  Dtk_feat_close_surf *GetCloseSurface()const{return entity.close;}
7312 
7313 
7314 
7315  //! \brief Returns feature's inner sew surface feature
7316  //! \param [in] Generic Feature
7317  //! \param [in/out]
7318  //! \param [out] Sew Surface Feature
7319  //! \return NOTOK if error, ISOK if ok
7320  //! \remark You should test Generic Feature type before call
7321 
7323  Dtk_feat_sew_surf *GetSewSurface()const{return entity.sew;}
7324 
7325 
7326 
7327  //! \brief Returns feature's inner remove face feature
7328  //! \param [in] Generic Feature
7329  //! \param [in/out]
7330  //! \param [out] Remove Face Feature
7331  //! \return NOTOK if error, ISOK if ok
7332  //! \remark You should test Generic Feature type before call
7333 
7335  Dtk_feat_remove_face *GetRemoveFace()const{return entity.remove_face;}
7336 
7337 
7338 
7339  //! \brief Returns feature's inner replace face feature
7340  //! \param [in] Generic Feature
7341  //! \param [in/out]
7342  //! \param [out] Replace Face Feature
7343  //! \return NOTOK if error, ISOK if ok
7344  //! \remark You should test Generic Feature type before call
7345 
7347  Dtk_feat_replace_face *GetReplaceFace()const{return entity.replace_face;}
7348 
7349 
7350 
7351 
7352  //! \brief Returns feature's translate feature
7353  //! \param [in] Generic Feature
7354  //! \param [in/out]
7355  //! \param [out] Generic Translate Feature
7356  //! \return NOTOK if error, ISOK if ok
7357  //! \remark You should test Generic Feature type before call
7358 
7360  Dtk_feat_translate *GetTranslate()const{return entity.translate;}
7361 
7362 
7363 
7364  //! \brief Returns feature's rotate feature
7365  //! \param [in] Generic Feature
7366  //! \param [in/out]
7367  //! \param [out] Generic Rotate Feature
7368  //! \return NOTOK if error, ISOK if ok
7369  //! \remark You should test Generic Feature type before call
7370 
7372  Dtk_feat_rotate *GetRotate()const{return entity.rotate;}
7373 
7374 
7375 
7376 
7377  //! \brief Returns feature's symmetry feature
7378  //! \param [in] Generic Feature
7379  //! \param [in/out]
7380  //! \param [out] Generic Rotate Feature
7381  //! \return NOTOK if error, ISOK if ok
7382  //! \remark You should test Generic Feature type before call
7383 
7385  Dtk_feat_symmetry *GetSymmetry()const{return entity.symmetry;}
7386 
7387 
7388 
7389 
7390  //! \brief Returns feature's stiffener feature
7391  //! \param [in] Generic Feature
7392  //! \param [in/out]
7393  //! \param [out] Generic Stiffener Feature
7394  //! \return NOTOK if error, ISOK if ok
7395  //! \remark You should test Generic Feature type before call
7396 
7398  Dtk_feat_stiffener *GetStiffener()const{return entity.stiffener;}
7399 
7400 
7401 
7402 
7403  //! \brief Returns feature's scaling feature
7404  //! \param [in] Generic Feature
7405  //! \param [in/out]
7406  //! \param [out] Generic Scaling Feature
7407  //! \return NOTOK if error, ISOK if ok
7408  //! \remark You should test Generic Feature type before call
7409 
7411  Dtk_feat_scaling *GetScaling()const{return entity.scaling;}
7412 
7413 
7414 
7415 
7416  //! \brief Returns feature's Sheet Metal feature
7417  //! \param [in] Generic Feature
7418  //! \param [in/out]
7419  //! \param [out] Sheet Metal Feature
7420  //! \return NOTOK if error, ISOK if ok
7421  //! \remark You should test Generic Feature type before call
7422 
7424  Dtk_feat_sheet_metal *GetSheetMetal()const{return entity.sheet_metal;}
7425 
7426 
7427 
7428  //! \brief Returns feature's Surface feature
7429  //! \param [in] Generic Feature
7430  //! \param [in/out]
7431  //! \param [out] Surface Feature
7432  //! \return NOTOK if error, ISOK if ok
7433  //! \remark You should test Generic Feature type before call
7434 
7436  Dtk_feat_surf_feature *GetSurfaceFeature()const{return entity.surf_feature;}
7437 
7438 
7439 
7440 
7441  //! \brief Returns feature's Loft feature
7442  //! \param [in] Generic Feature
7443  //! \param [in/out]
7444  //! \param [out] Loft Feature
7445  //! \return NOTOK if error, ISOK if ok
7446  //! \remark You should test Generic Feature type before call
7447 
7449  Dtk_feat_loft *GetLoft()const{return entity.loft;}
7450 
7451 
7452 
7453  //! \brief Returns feature's (Face) Thickness feature
7454  //! \param [in] Generic Feature
7455  //! \param [in/out]
7456  //! \param [out] Thickness Feature
7457  //! \return NOTOK if error, ISOK if ok
7458  //! \remark You should test Generic Feature type before call
7459 
7461  Dtk_feat_thickness_feat *GetThicknessFeature()const{return entity.thickness_feat;}
7462 
7463 
7464  //! \brief Returns feature's inner Pipe sub-feature
7465  //! \param [in] Generic Feature
7466  //! \param [in/out]
7467  //! \param [out] Pipe Feature
7468  //! \return NOTOK if error, ISOK if ok
7469  //! \remark You should test Generic Feature type before call
7470 
7472  Dtk_feat_pipe *GetPipe()const{return entity.pipe;}
7473 
7474  Dtk_feat_user_defined *GetUserDefined() const {return entity.user_defined;}
7475 
7476 
7477  //! \brief Returns SpotPoint feature
7478  //! \param [in] Generic Feature
7479  //! \param [in/out]
7480  //! \param [out] SpotPoint Feature
7481  //! \return NOTOK if error, ISOK if ok
7482  //! \remark You should test Generic Feature type before call
7483 
7485  Dtk_feat_SpotPoint *GetSpotPoint()const{return entity.spot_point;}
7486 
7487 };
7488 
7489 
7490 
7491 
7492 
7493 /* End of generic feature */
7494 
7495 /**
7496 @brief Node (the node in the tree structure storing the data features)
7497 */
7498 
7499 
7501 
7502 public:
7503 
7505  long id;
7507  //Dtk_feat * feature;
7510 
7511 
7512 
7513 
7514  //! \brief Constructor of a node
7515  //! \param [in/out]
7516  //! \param [out]
7517  //! \return Allocated node
7518  //! \remark
7519 
7520 
7522 
7523 
7524 
7525 
7526  //! \brief Destructor of a node
7527  //! \param [in] Generic node to destruct
7528  //! \param [in/out]
7529  //! \param [out]
7530  //! \return Free node
7531  //! \remark
7532 
7534 
7535 
7536 
7537 
7538  //! \brief Gets the node type
7539  //! \param [in] Node node
7540  //! \param [in/out]
7541  //! \param [out] NODE_TYPE
7542  //! \return NOTOK if error, ISOK if ok
7543  //! \remark You need to test the type to get the inner feature
7544 
7546 
7547 
7548 
7549 
7550  //! \brief Get the id if the node is Root type
7551  //! \param [in] Node
7552  //! \param [in/out]
7553  //! \param [out] long
7554  //! \return NOTOK if error, ISOK if ok
7555  //! \remark
7556 
7557  int get_id (long *);
7558 
7559 
7560 
7561  //! \brief Returns the root name
7562  //! \param [in] Generic Root
7563  //! \param [in/out]
7564  //! \param [out] Body Name
7565  //! \return NOTOK if error, ISOK if ok
7566  //! \remark
7567 
7569 
7570 
7571 
7572  //! \brief Returns the feature , valid if the node is feature type
7573  //! \param [in] Node
7574  //! \param [in/out]
7575  //! \param [out] Dtk_feat
7576  //! \return NOTOK if error, ISOK if ok
7577  //! \remark
7578 
7580 
7581 
7582 
7583  //! \brief Returns the value indicating whether the node is treated or not
7584  //! \param [in] Node
7585  //! \param [in/out]
7586  //! \param [out] Dtk_feat
7587  //! \return NOTOK if error, ISOK if ok
7588  //! \remark
7589 
7591 };
7592 
7593 #endif
7594 
7595 
Dtk_feat::GetHoleSeries
Dtk_feat_hole_series * GetHoleSeries() const
Definition: str_feat_dtk.hpp:7094
Dtk_feat_tritangent_fillet::limitingElement
Dtk_feat_geometry * limitingElement
Definition: str_feat_dtk.hpp:2625
Dtk_feat_draft_advanced::driving_side
DRIVING_SIDE driving_side
Definition: str_feat_dtk.hpp:4916
Dtk_feat_hole::GetNeckAngle
Dtk_Double64 GetNeckAngle() const
return the angle of the neck
Definition: str_feat_dtk.hpp:1970
Dtk_feat_user_defined_value::Dtk_feat_user_defined_value
Dtk_feat_user_defined_value()
Definition: str_feat_dtk.hpp:6098
Dtk_feat_loft_coupling::get_type
int get_type(COUPLING_TYPE *)
Returns Coupling type
HOLE_TYPE
HOLE_TYPE
Definition: str_feat_dtk.hpp:105
Dtk_feat_pattern::get_row2
int get_row2(int *)
Returns the order of the base feature in the list of occurrences resulted of the pattern feature.
Dtk_feat_translate_coordinates::get_Z
int get_Z(double *)
Returns the Third coordinate value of the translate feature.
DTK_FEAT_HOLE_SERIES
@ DTK_FEAT_HOLE_SERIES
Definition: str_feat_dtk.hpp:300
Dtk_pipe_fiber_segment::Dtk_pipe_fiber_segment
Dtk_pipe_fiber_segment()
DTK_SHM_MODULE_TYPE
DTK_SHM_MODULE_TYPE
Definition: str_feat_dtk.hpp:235
Dtk_feat
Generic Feature All metric data in feature classes are given in MM All angular data are given in degr...
Definition: str_feat_dtk.hpp:6859
Dtk_feat::get_thread
int get_thread(Dtk_feat_thread **e)
Returns feature's inner Thread Feature
Dtk_feat_prism::annotation
char ** annotation
Definition: str_feat_dtk.hpp:881
DTK_FEAT_THREAD
@ DTK_FEAT_THREAD
Definition: str_feat_dtk.hpp:302
DTK_THREAD_TAP
@ DTK_THREAD_TAP
Definition: str_feat_dtk.hpp:282
Dtk_feat_draft::get_reflect_line_draft
int get_reflect_line_draft(Dtk_feat_draft_reflect_line **)
Returns reflect line draft entity
Dtk_feat_symmetry::Dtk_feat_symmetry
Dtk_feat_symmetry()
Constructor of Symmetry Feature
DTK_FEAT_UNKNOWN
@ DTK_FEAT_UNKNOWN
Definition: str_feat_dtk.hpp:296
DTK_FEAT_SLOT
@ DTK_FEAT_SLOT
Definition: str_feat_dtk.hpp:311
Dtk_feat_mirror::nb_elts
int nb_elts
Definition: str_feat_dtk.hpp:3704
DTK_FEAT_MULTI_POCKET
@ DTK_FEAT_MULTI_POCKET
Definition: str_feat_dtk.hpp:342
Dtk_feat_draft_constant::~Dtk_feat_draft_constant
~Dtk_feat_draft_constant()
Destructor of a draft feature.
Dtk_feat_draft_var_point::~Dtk_feat_draft_var_point
~Dtk_feat_draft_var_point()
Dtk_feat_hole::HasCounterDepthTolerance
Dtk_bool HasCounterDepthTolerance() const
Definition: str_feat_dtk.hpp:1888
DTK_COORDINATES
@ DTK_COORDINATES
Definition: str_feat_dtk.hpp:217
Dtk_feat_SpotPoint::setNormal
void setNormal(const Dtk_dir &p_normal)
Set SpotPoint normal.
MULTI_FACES
@ MULTI_FACES
Definition: str_feat_dtk.hpp:171
Dtk_feat_pattern::simple_rep
Bool simple_rep
Definition: str_feat_dtk.hpp:3297
Dtk_feat_hole_series::_Middle
Dtk_FeaturePtr _Middle
Definition: str_feat_dtk.hpp:2009
Dtk_feat_SpotPoint::Sealant_material2
@ Sealant_material2
Definition: str_feat_dtk.hpp:6656
Dtk_pipe_fiber_segment
Neutral Fiber Segment : composed of the Start, End, and Center points or from a Spline Curve (in ca...
Definition: str_feat_dtk.hpp:6340
Dtk_feat_inner_thread::get_depth
int get_depth(double *)
Returns the thread depth.
Dtk_feat::dtk_feat_type::multi_prism
Dtk_feat_multi_prism * multi_prism
Definition: str_feat_dtk.hpp:6913
Dtk_feat::dtk_feat_type::face_fillet
Dtk_feat_face_fillet * face_fillet
Definition: str_feat_dtk.hpp:6897
Dtk_feat_SpotPoint::TIG_14
@ TIG_14
Definition: str_feat_dtk.hpp:6634
Dtk_feat_revol::get_inner_side
int get_inner_side(int *)
Returns the closing side of the open profile (side flag).
Dtk_feat_var_edge_ribbon::get_variation
int get_variation(FILLET_VARIATION_TYPE *)
Dtk_feat_hole::get_counter_angle
int get_counter_angle(double *)
Returns the hole counter angle.
Dtk_feat_thread::get_support_diameter
int get_support_diameter(double *)
Returns the thread support surface diameter.
Dtk_feat_rotate_axis_elements::~Dtk_feat_rotate_axis_elements
~Dtk_feat_rotate_axis_elements()
Destructor a "Axis-Element" Rotation Feature
DTK_FEAT_SPOT_POINT
@ DTK_FEAT_SPOT_POINT
Definition: str_feat_dtk.hpp:382
Dtk_feat_udf::_XmlDefinition
Dtk_string _XmlDefinition
Definition: str_feat_dtk.hpp:2063
Dtk_feat_mirror::gener_tool
bool gener_tool
Definition: str_feat_dtk.hpp:3707
Dtk_feat_pipe::get_Height
DtkErrorStatus get_Height(double &outHeight) const
Returns Pipe Section Height (Available for Rectangular, Flat Oval, Radius Corner and Double Ridge Sec...
Dtk_feat_body::type
DTK_BODY_TYPE type
Definition: str_feat_dtk.hpp:5994
Dtk_feat::dtk_feat_type::surf_feature
Dtk_feat_surf_feature * surf_feature
Definition: str_feat_dtk.hpp:6945
Dtk_feat_stiffener
Generic Feature Stiffener.
Definition: str_feat_dtk.hpp:5199
Dtk_feat_replace_face::face_to_remove
Dtk_feat_geometry * face_to_remove
Definition: str_feat_dtk.hpp:3029
DTK_SHM_AEROSPACE_DESIGN
@ DTK_SHM_AEROSPACE_DESIGN
Definition: str_feat_dtk.hpp:239
Dtk_feat_node::feature
Dtk_FeaturePtr feature
Definition: str_feat_dtk.hpp:7508
DRIVING_SIDE
DRIVING_SIDE
Definition: str_feat_dtk.hpp:190
Dtk_feat::dtk_feat_type::pipe
Dtk_feat_pipe * pipe
Definition: str_feat_dtk.hpp:6951
DTK_FEAT_SHM_HOLE
@ DTK_FEAT_SHM_HOLE
Definition: str_feat_dtk.hpp:465
DTK_FEAT_FILLET
@ DTK_FEAT_FILLET
Definition: str_feat_dtk.hpp:306
Dtk_feat::dtk_feat_type::close
Dtk_feat_close_surf * close
Definition: str_feat_dtk.hpp:6923
Dtk_feat_edge_ribbon::spine
Bool spine
Definition: str_feat_dtk.hpp:2331
Dtk_feat_close_surf::get_surface
int get_surface(Dtk_feat_geometry **)
Returns the closed surface element of the feature
Dtk_feat_thickness_feat::otherSkins
Dtk_tab< Dtk_feat_thickness_face * > otherSkins
Definition: str_feat_dtk.hpp:5737
Dtk_feat_draft_neutral_element::Dtk_feat_draft_neutral_element
Dtk_feat_draft_neutral_element()
Dtk_feat_var_edge_ribbon::get_nb_points
int get_nb_points(int *)
Returns constant edge ribbon points number
Dtk_feat_node
Node (the node in the tree structure storing the data features)
Definition: str_feat_dtk.hpp:7500
DTK_POINT_TO_POINT
@ DTK_POINT_TO_POINT
Definition: str_feat_dtk.hpp:216
Dtk_feat_edge_ribbon::Dtk_feat_edge_ribbon
Dtk_feat_edge_ribbon()
Dtk_transfo
This is the Transformation dedicated class.
Definition: dtk_transfo.hpp:19
Dtk_feat_node::get_name
int get_name(Dtk_string *)
Returns the root name
Dtk_feat_multi_prism
Multi Prism Feature : A repetition of Prism extrudes a profile along a specific direction....
Definition: str_feat_dtk.hpp:5886
FITTED
@ FITTED
Definition: str_feat_dtk.hpp:186
DTK_COUPLING_RATIO
@ DTK_COUPLING_RATIO
Definition: str_feat_dtk.hpp:246
Dtk_feat_pipe::_Width
double _Width
Definition: str_feat_dtk.hpp:6492
Dtk_feat_translate_coordinates::get_Y
int get_Y(double *)
Returns the second coordinate value of the translate feature.
Dtk_feat_draft_advanced::get_fitted_parameter
int get_fitted_parameter(double *)
Returns Draft fitted parameter value
Dtk_feat_parting_element::~Dtk_feat_parting_element
~Dtk_feat_parting_element()
Dtk_feat_draft::type
DRAFT_TYPE type
Definition: str_feat_dtk.hpp:5038
Dtk_feat_hole::neck_active
Dtk_Int32 neck_active
Definition: str_feat_dtk.hpp:1623
DTK_USER_DEFINED_VAL_TYPE
DTK_USER_DEFINED_VAL_TYPE
Definition: str_feat_dtk.hpp:6076
Dtk_feat_SpotPoint::Ordinary
@ Ordinary
Definition: str_feat_dtk.hpp:6662
DTK_FEAT_SHM_BEAD
@ DTK_FEAT_SHM_BEAD
Definition: str_feat_dtk.hpp:467
DTK_FEAT_SHM_BEND_CONIC
@ DTK_FEAT_SHM_BEND_CONIC
Definition: str_feat_dtk.hpp:429
Dtk_feat_mirror::get_features
int get_features(Dtk_tab< Dtk_FeaturePtr > &)
Returns the array of features resulted of the mirror feature.
Dtk_feat_hole::GetInnerThread
Dtk_feat_inner_thread * GetInnerThread() const
Definition: str_feat_dtk.hpp:1699
DTK_FROM_SIDE
@ DTK_FROM_SIDE
Definition: str_feat_dtk.hpp:229
DTK_FEAT_SHAFT
@ DTK_FEAT_SHAFT
Definition: str_feat_dtk.hpp:304
Dtk_feat_fillet_point::elt
Dtk_feat_geometry * elt
Definition: str_feat_dtk.hpp:2226
Dtk_feat_shell_face
Face to remove.
Definition: str_feat_dtk.hpp:782
Dtk_feat_sweep::profile_control_type
PROFILE_CONTROL_TYPE profile_control_type
Definition: str_feat_dtk.hpp:2699
Dtk_feat_symmetry::get_reference
int get_reference(Dtk_feat_geometry **)
Returns the reference geometry of the symmetry feature
DTK_FEAT_SPLIT_SURF
@ DTK_FEAT_SPLIT_SURF
Definition: str_feat_dtk.hpp:313
DTK_FEAT_COMP_PLIES_GROUP
@ DTK_FEAT_COMP_PLIES_GROUP
Definition: str_feat_dtk.hpp:387
DTK_RECT_PATTERN
@ DTK_RECT_PATTERN
Definition: str_feat_dtk.hpp:147
Dtk_feat_multi_prism::get_normal_to_surface
int get_normal_to_surface(Bool *)
Returns the normal to surface.
Dtk_feat_mirror::input_ids
long * input_ids
Definition: str_feat_dtk.hpp:3700
Dtk_feat_sheet_metal
Definition: str_feat_dtk.hpp:6255
DTK_FEAT_SHM_SURFACIC_FLANGE
@ DTK_FEAT_SHM_SURFACIC_FLANGE
Definition: str_feat_dtk.hpp:477
DTK_PIPE_EXCENTRIC_CONE
@ DTK_PIPE_EXCENTRIC_CONE
Definition: str_feat_dtk.hpp:268
Dtk_feat_prism::profiles
Dtk_feat_geometry * profiles
Definition: str_feat_dtk.hpp:871
Dtk_feat_user_defined::~Dtk_feat_user_defined
~Dtk_feat_user_defined()
Dtk_feat_SpotPoint::Sealant_material1
@ Sealant_material1
Definition: str_feat_dtk.hpp:6655
Dtk_feat_limit::~Dtk_feat_limit
~Dtk_feat_limit()
Dtk_feat_prism::first_limit
Dtk_feat_limit * first_limit
Definition: str_feat_dtk.hpp:877
DTK_PIPE_ELBOW_SEGMENTS
@ DTK_PIPE_ELBOW_SEGMENTS
Definition: str_feat_dtk.hpp:263
Dtk_feat_SpotPoint::Structural_Adhesive
@ Structural_Adhesive
Definition: str_feat_dtk.hpp:6642
DTK_USER_PATTERN
@ DTK_USER_PATTERN
Definition: str_feat_dtk.hpp:149
Dtk_feat::dtk_feat_type::loft
Dtk_feat_loft * loft
Definition: str_feat_dtk.hpp:6901
Dtk_feat_split_surf::splitting_element
Dtk_feat_geometry * splitting_element
Definition: str_feat_dtk.hpp:2805
Dtk_feat::dtk_feat_type::mirror
Dtk_feat_mirror * mirror
Definition: str_feat_dtk.hpp:6928
Dtk_feat::get_chamfer
int get_chamfer(Dtk_feat_chamfer **e)
Returns feature's inner Chamfer Feature.
Dtk_feat_hole::get_counter_depth_has_tol
int get_counter_depth_has_tol(Bool *)
Tests whether there is a tolerance set on counter depth.
Dtk_pipe_fiber_segment::endPoint
Dtk_pnt endPoint
Definition: str_feat_dtk.hpp:6355
Dtk_feat_edge_ribbon::kept_edges
Dtk_feat_geometry ** kept_edges
Definition: str_feat_dtk.hpp:2326
Dtk_feat_draft_side::~Dtk_feat_draft_side
~Dtk_feat_draft_side()
Dtk_feat_thread::GetSupportDepthTolerance
Dtk_feat_tolerance_set * GetSupportDepthTolerance() const
Definition: str_feat_dtk.hpp:1526
Dtk_feat_remove_face::Dtk_feat_remove_face
Dtk_feat_remove_face()
Constructor of Remove Face Feature
Dtk_feat_draft_advanced::driving_mode
DRIVING_MODE driving_mode
Definition: str_feat_dtk.hpp:4915
Dtk_feat_circ_pattern::circle_spacing
double circle_spacing
Definition: str_feat_dtk.hpp:3206
Dtk_feat_remove_face::~Dtk_feat_remove_face
~Dtk_feat_remove_face()
Destructor of a Remove Face Feature.
Dtk_pipe_fiber_segment::DTK_TOP_LEFT
@ DTK_TOP_LEFT
Definition: str_feat_dtk.hpp:6343
Dtk_feat_loft_coupling::couplingType
COUPLING_TYPE couplingType
Definition: str_feat_dtk.hpp:5468
DTK_POINT_PROJECTION
@ DTK_POINT_PROJECTION
Definition: str_feat_dtk.hpp:83
Dtk_feat_chamfer::get_ribbons
int get_ribbons(Dtk_feat_chamfer_ribbon ***)
Returns Chamfer ribbons
Dtk_feat_hole::limit
Dtk_feat_geometry * limit
Definition: str_feat_dtk.hpp:1614
Dtk_feat_thick_surf
Generic Thick Surface.
Definition: str_feat_dtk.hpp:2841
Dtk_feat_hole::end_active
Dtk_Int32 end_active
Definition: str_feat_dtk.hpp:1625
Dtk_feat_draft::Dtk_feat_draft_type::var_angle
Dtk_feat_draft_variable * var_angle
Definition: str_feat_dtk.hpp:5024
Dtk_feat_draft_constant
Generic Feature Standard Constant Draft.
Definition: str_feat_dtk.hpp:4735
Dtk_feat::get_draft
int get_draft(Dtk_feat_draft **e)
Returns feature's inner Draft Feature.
Dtk_feat_user_pattern::get_gener_tool
int get_gener_tool(bool *)
Returns the generated tool status indicating if generated features are to be gotten.
Dtk_feat_draft_reflect_line::~Dtk_feat_draft_reflect_line
~Dtk_feat_draft_reflect_line()
Destructor of a reflect line draft feature.
Dtk_feat_face_fillet::holdCurve
Dtk_feat_geometry * holdCurve
Definition: str_feat_dtk.hpp:2543
Dtk_feat_SpotPoint::material
Material material() const
Return SpotPoint material.
Dtk_feat_stiffener::isReverseDepth
Bool isReverseDepth
Definition: str_feat_dtk.hpp:5209
DTK_USER_DEFINED_DOUBLE
@ DTK_USER_DEFINED_DOUBLE
Definition: str_feat_dtk.hpp:6077
Dtk_feat_symmetry
Generic Symmetry Feature.
Definition: str_feat_dtk.hpp:3831
Dtk_feat_SpotPoint::setRegulation
void setRegulation(Regulation p_regulation)
Set SpotPoint regulation.
Dtk_feat_hole::GetLimit
Dtk_feat_limit * GetLimit() const
Definition: str_feat_dtk.hpp:1722
Dtk_feat_tritangent_fillet::get_remove_face
int get_remove_face(Dtk_feat_geometry **)
Returns Removed face element to tri-tangent Fillet.
DTK_FEAT_SHM_PATTERN_CIRC
@ DTK_FEAT_SHM_PATTERN_CIRC
Definition: str_feat_dtk.hpp:451
Dtk_feat_rotate::dtk_rotate_type::rotate_pnts
Dtk_feat_rotate_points * rotate_pnts
Definition: str_feat_dtk.hpp:4360
Dtk_feat_translate_direction::Dtk_feat_translate_direction
Dtk_feat_translate_direction()
Constructor of a direction translate Feature
Dtk_feat_mirror::get_object_type
int get_object_type(DTK_OBJECT_TYPE *)
Returns object type
Dtk_feat_hole::GetType
HOLE_TYPE GetType() const
Definition: str_feat_dtk.hpp:1658
Dtk_feat::GetPrism
Dtk_feat_prism * GetPrism() const
Definition: str_feat_dtk.hpp:7166
Dtk_feat::get_associated_geometry
int get_associated_geometry(Dtk_feat_geometry **)
Returns inner feature's associated geometry
Dtk_feat_prism::side
int side
Definition: str_feat_dtk.hpp:875
Dtk_feat_thickness::get_thin2
int get_thin2(double *)
Returns outer thickness value.
Dtk_feat_pattern
Definition: str_feat_dtk.hpp:3277
DTK_BOOLEAN_OPERATION
@ DTK_BOOLEAN_OPERATION
Definition: str_feat_dtk.hpp:210
Dtk_feat_surf_feature::get_surf_feat_geometry
int get_surf_feat_geometry(Dtk_feat_geometry **)
Returns inner Surface feature's output geometry
Dtk_feat_shell::default_outside_thickness
double default_outside_thickness
Definition: str_feat_dtk.hpp:2110
Dtk_feat_rotate::get_axis_twoElements_rotate
int get_axis_twoElements_rotate(Dtk_feat_rotate_axis_elements **)
Returns "Axis - Two Elements " rotate entity
Dtk_feat_pattern::get_nb_objects_to_pattern
int get_nb_objects_to_pattern(int *)
Returns the number of objects to pattern.
Dtk_feat_loft::get_guides
int get_guides(Dtk_tab< Dtk_feat_loft_guide * > &)
Returns array of loft guides.
Dtk_feat_surf_feature::get_surf_feat_type
int get_surf_feat_type(DTK_SURF_FEATURE_TYPE *)
Gets the Surface Feature type
Dtk_feat_draft
Generic Feature Draft.
Definition: str_feat_dtk.hpp:5018
Dtk_feat_draft_constant::form
DRAFT_FORM form
Definition: str_feat_dtk.hpp:4741
Dtk_feat_pattern::get_circ_pattern
int get_circ_pattern(Dtk_feat_circ_pattern **)
Returns the circular entity of the pattern feature.
Dtk_feat_SpotPoint::setLocation
void setLocation(double x, double y, double z)
Returns SpotPoint location.
Dtk_feat_pattern_dir::~Dtk_feat_pattern_dir
~Dtk_feat_pattern_dir()
Dtk_feat::get_symmetry
int get_symmetry(Dtk_feat_symmetry **e)
Returns feature's symmetry feature
Dtk_feat_prism::Dtk_feat_prism
Dtk_feat_prism()
Constructor of Prism Feature
Dtk_feat_thick_surf::second_offset
double second_offset
Definition: str_feat_dtk.hpp:2846
DTK_FEAT_BOOLEAN
@ DTK_FEAT_BOOLEAN
Definition: str_feat_dtk.hpp:326
Dtk_feat_hole::GetStartDiameter
Dtk_Double64 GetStartDiameter() const
return the diameter of the start chamfer
Definition: str_feat_dtk.hpp:1937
Dtk_feat_surf_feature::~Dtk_feat_surf_feature
~Dtk_feat_surf_feature()
Destructor of a Surface Feature generic feature
Dtk_feat::Create
static Dtk_FeaturePtr Create()
Calls default constructor to allocate a new object.
Dtk_feat_node::~Dtk_feat_node
~Dtk_feat_node()
Destructor of a node
Dtk_feat_draft_var_point::get_point
int get_point(Dtk_pnt *)
Returns Draft point
Dtk_feat_prism_domain::profile
Dtk_feat_geometry * profile
Definition: str_feat_dtk.hpp:5837
Dtk_feat_thickness_feat
Definition: str_feat_dtk.hpp:5730
DTK_FEAT_SHM_TEAR_DROP
@ DTK_FEAT_SHM_TEAR_DROP
Definition: str_feat_dtk.hpp:435
Dtk_feat_sweep::get_control_object_axis
int get_control_object_axis(Dtk_feat_axis **)
Get axis control object of feature Sweep.
Dtk_feat_SpotPoint::Glue2
@ Glue2
Definition: str_feat_dtk.hpp:6654
DTK_FEAT_COMP_SEQUENCE
@ DTK_FEAT_COMP_SEQUENCE
Definition: str_feat_dtk.hpp:388
Dtk_feat_rotate_axis::~Dtk_feat_rotate_axis
~Dtk_feat_rotate_axis()
Destructor a rotation with axis Feature
Dtk_feat_chamfer::~Dtk_feat_chamfer
~Dtk_feat_chamfer()
DTK_FEAT_SURF_REVOL
@ DTK_FEAT_SURF_REVOL
Definition: str_feat_dtk.hpp:324
Dtk_feat_rotate_axis
Generic Rotate Feature.
Definition: str_feat_dtk.hpp:4166
Dtk_feat::get_thickness_feat
int get_thickness_feat(Dtk_feat_thickness_feat **e)
Returns feature's (Face) Thickness feature
Dtk_feat_SpotPoint::Class_C
@ Class_C
Definition: str_feat_dtk.hpp:6681
Dtk_feat_face_fillet::Dtk_feat_face_fillet
Dtk_feat_face_fillet()
Dtk_feat::get_remove_face
int get_remove_face(Dtk_feat_remove_face **e)
Returns feature's inner remove face feature
DTK_DUPLICATION
@ DTK_DUPLICATION
Definition: str_feat_dtk.hpp:209
Dtk_feat::GetPipe
Dtk_feat_pipe * GetPipe() const
Definition: str_feat_dtk.hpp:7472
Dtk_feat::GetName
Dtk_string GetName() const
Definition: str_feat_dtk.hpp:7026
DTK_FEAT_SHM_MIRROR
@ DTK_FEAT_SHM_MIRROR
Definition: str_feat_dtk.hpp:473
Dtk_feat_surface_transfo::elementID
long elementID
Definition: str_feat_dtk.hpp:3645
DTK_FEAT_COMP_ELEMENT_GEOM
@ DTK_FEAT_COMP_ELEMENT_GEOM
Definition: str_feat_dtk.hpp:396
DTK_FEAT_COMP_STD_CONTOUR
@ DTK_FEAT_COMP_STD_CONTOUR
Definition: str_feat_dtk.hpp:395
Dtk_feat::get_mirror
int get_mirror(Dtk_feat_mirror **e)
Returns feature's inner mirror feature.
Dtk_feat_loft::get_relimited_start_section
int get_relimited_start_section(Bool *)
Returns boolean value whether the loft is restricted from the start.
FILLET_VARIATION_TYPE
FILLET_VARIATION_TYPE
Definition: str_feat_dtk.hpp:127
Dtk_feat_thickness_feat::get_nb_skins
int get_nb_skins(int *)
Get the number of other skins (thickness for each skin) of the feature Thickness.
Dtk_feat::~Dtk_feat
~Dtk_feat()
BaseDestructor of a generic feature
Dtk_feat_edge_ribbon::~Dtk_feat_edge_ribbon
~Dtk_feat_edge_ribbon()
Dtk_feat::get_multi_prism
int get_multi_prism(Dtk_feat_multi_prism **e)
Returns feature's inner Multi Prism Feature (MULTI_PAD|MULTI_POCKET)
Dtk_feat_translate_direction::get_distance
int get_distance(double *)
Returns The distance of the translate feature.
Dtk_feat_sweep::get_thickness
int get_thickness(Dtk_feat_thickness **)
Returns thickness of a sweep.
Dtk_feat_thread::tol_support_depth
Dtk_feat_tolerance_set * tol_support_depth
Definition: str_feat_dtk.hpp:1462
Dtk_feat_mirror::isMirror
bool isMirror
Definition: str_feat_dtk.hpp:3708
Dtk_feat::DtkDynamicCast
static Dtk_feat * DtkDynamicCast(Dtk_Object *s)
Performs a dynamic cast - doesn't need RTTI -.
Definition: str_feat_dtk.hpp:6987
Dtk_feat_hole::get_counter_depth_with_tol
int get_counter_depth_with_tol(double *, double *, double *)
Gets the hole counter depth with its tolerance value (inf value & sup value)
Dtk_feat_draft_neutral_element::~Dtk_feat_draft_neutral_element
~Dtk_feat_draft_neutral_element()
Dtk_feat_remove_face::faces_to_keep
Dtk_tab< Dtk_feat_geometry * > faces_to_keep
Definition: str_feat_dtk.hpp:2954
Dtk_feat_prism_domain::get_profile
int get_profile(Dtk_feat_geometry **)
Returns the profile internal component of the multi prism domain feature.
Dtk_feat_cst_edge_ribbon
Feature Constant Radius Edge Ribbon.
Definition: str_feat_dtk.hpp:2193
Dtk_feat_pipe::_type
DTK_PIPE_TYPE _type
Definition: str_feat_dtk.hpp:6482
Dtk_feat_translate::~Dtk_feat_translate
~Dtk_feat_translate()
Destructor a generic translate Feature
Dtk_feat_translate::get_point_to_point_translate
int get_point_to_point_translate(Dtk_feat_translate_point **)
Returns Point_to_point translate entity
Dtk_feat_hole::IsStartActived
Dtk_Int32 IsStartActived() const
test if start chamfer is activated
Definition: str_feat_dtk.hpp:1927
Dtk_feat::IsActive
Dtk_bool IsActive() const
Definition: str_feat_dtk.hpp:7081
DTK_PIPE_PROFILE
@ DTK_PIPE_PROFILE
Definition: str_feat_dtk.hpp:266
Dtk_feat_user_pattern::anchor_point
Dtk_feat_geometry * anchor_point
Definition: str_feat_dtk.hpp:3515
Dtk_feat_replace_face
Generic Replace Face.
Definition: str_feat_dtk.hpp:3025
Dtk_feat_prism_domain::~Dtk_feat_prism_domain
~Dtk_feat_prism_domain()
Dtk_feat_edge_ribbon::ribbon_spine
Dtk_feat_geometry * ribbon_spine
Definition: str_feat_dtk.hpp:2324
Dtk_feat_node::Dtk_feat_node
Dtk_feat_node()
Constructor of a node
Dtk_feat_draft_var_point::elt
Dtk_feat_geometry * elt
Definition: str_feat_dtk.hpp:4633
COUNTER_DRILLED_2
@ COUNTER_DRILLED_2
Definition: str_feat_dtk.hpp:111
DTK_SECTION_ROUND
@ DTK_SECTION_ROUND
Definition: str_feat_dtk.hpp:273
Dtk_feat::GetSymmetry
Dtk_feat_symmetry * GetSymmetry() const
Definition: str_feat_dtk.hpp:7385
Dtk_feat_multi_prism::get_type
int get_type(DTK_PRISM_TYPE *)
Returns Multi Prism type
Dtk_feat_inner_thread::get_thread_limit_type
int get_thread_limit_type(DTK_THREAD_LIMIT_TYPE &)
Returns the thread limit type value.
Dtk_feat_mirror::get_input_ids
int get_input_ids(long **)
Returns the array of Feature's IDs or Body ID to mirror.
Dtk_feat_hole::HasDiameterTolerance
Dtk_bool HasDiameterTolerance() const
Definition: str_feat_dtk.hpp:1753
Dtk_feat_loft_coupling::get_coupling_points
int get_coupling_points(Dtk_tab< Dtk_feat_geometry * > &)
Returns array of loft coupling points
Dtk_feat::dtk_feat_type::tritangent_fillet
Dtk_feat_tritangent_fillet * tritangent_fillet
Definition: str_feat_dtk.hpp:6898
Dtk_feat_user_pattern::get_points
int get_points(Dtk_tab< Dtk_pnt > &)
Returns the points to user pattern.
Dtk_feat_boolean::main_body
Dtk_feat * main_body
Definition: str_feat_dtk.hpp:4458
DTK_SHM_PRODUCTION
@ DTK_SHM_PRODUCTION
Definition: str_feat_dtk.hpp:237
Dtk_feat_var_edge_ribbon::~Dtk_feat_var_edge_ribbon
~Dtk_feat_var_edge_ribbon()
Dtk_feat_limit::val
double val
Definition: str_feat_dtk.hpp:634
Dtk_feat_stiffener::isNeutralFiber
Bool isNeutralFiber
Definition: str_feat_dtk.hpp:5207
DTK_BOOLEAN_REMOVE
@ DTK_BOOLEAN_REMOVE
Definition: str_feat_dtk.hpp:33
Dtk_feat_tritangent_fillet::get_face1
int get_face1(Dtk_feat_geometry **)
Returns First face element to tri-tangent Fillet.
LENGTH_LENGTH
@ LENGTH_LENGTH
Definition: str_feat_dtk.hpp:116
DTK_USER_DEFINED_STRING
@ DTK_USER_DEFINED_STRING
Definition: str_feat_dtk.hpp:6079
Dtk_feat_multi_prism::direction
Dtk_feat_axis * direction
Definition: str_feat_dtk.hpp:5891
Dtk_feat::get_rotate
int get_rotate(Dtk_feat_rotate **e)
Returns feature's rotate feature
Dtk_feat_shell::get_nb_removed_faces
int get_nb_removed_faces(int *)
Get the number of removed faces of the feature Shell.
DTK_POINT_CONSTRUCTION
DTK_POINT_CONSTRUCTION
Definition: str_feat_dtk.hpp:78
Dtk_feat_body::get_visibility
int get_visibility(Bool *)
Get the body Visibility
Dtk_feat_pipe::get_NodeTable
DtkErrorStatus get_NodeTable(Dtk_tab< Dtk_pnt > &outNodeTable) const
Returns Table of Pipe Nodes
DTK_TRANSITION
@ DTK_TRANSITION
Definition: str_feat_dtk.hpp:208
Dtk_feat_hole::IsNeckActived
Dtk_Int32 IsNeckActived() const
test if neck is activated , only neck or relief can be activated not both
Definition: str_feat_dtk.hpp:1965
Dtk_feat_thread::GetSupportDepth
Dtk_Double64 GetSupportDepth() const
Definition: str_feat_dtk.hpp:1516
Dtk_feat_inner_thread::GetDiameter
Dtk_Double64 GetDiameter() const
Definition: str_feat_dtk.hpp:1297
Dtk_feat_sheet_metal::get_unFold_output_geometry
int get_unFold_output_geometry(Dtk_feat_geometry **)
Returns inner Sheet Metal feature's unfolded output geometry
DTK_FEAT_COMP_SECTION_GROUP
@ DTK_FEAT_COMP_SECTION_GROUP
Definition: str_feat_dtk.hpp:390
Dtk_feat_var_edge_ribbon
Feature Variable Radius Edge Ribbon.
Definition: str_feat_dtk.hpp:2275
INDEPENDENT
@ INDEPENDENT
Definition: str_feat_dtk.hpp:184
Dtk_feat_rotate_points::get_first_point
int get_first_point(Dtk_pnt *)
Returns the first point of the rotation feature.
Dtk_feat_stiffener::thick1
double thick1
Definition: str_feat_dtk.hpp:5205
Dtk_feat_thickness_face::get_thickness
int get_thickness(double *)
Get the thickness of the feature Thickness Face.
Dtk_feat_prism_domain::get_second_limit
int get_second_limit(Dtk_feat_limit **)
Returns the second limit of the prism domain feature.
Dtk_feat_hole::GetCounterDepthTolerance
Dtk_feat_tolerance_set * GetCounterDepthTolerance() const
Definition: str_feat_dtk.hpp:1878
Dtk_feat_body::dtk_inner_feat_tab
Dtk_tab< Dtk_FeaturePtr > dtk_inner_feat_tab
Definition: str_feat_dtk.hpp:5997
Dtk_feat_draft::get_limiting_elements_nb
int get_limiting_elements_nb(int *)
Returns number of limiting elements list
Dtk_feat_translate_coordinates::Y
double Y
Definition: str_feat_dtk.hpp:3986
Dtk_feat_user_defined::Dtk_feat_user_defined
Dtk_feat_user_defined()
Dtk_feat_translate_coordinates::get_X
int get_X(double *)
Returns the first coordinate value of the translate feature.
DTK_SECTION_RECTANGULAR
@ DTK_SECTION_RECTANGULAR
Definition: str_feat_dtk.hpp:274
Dtk_feat_SpotPoint::Sealed_by_hand
@ Sealed_by_hand
Definition: str_feat_dtk.hpp:6647
Dtk_feat_rotate_axis::angle
double angle
Definition: str_feat_dtk.hpp:4169
DTK_FEAT_SHM_BEND
@ DTK_FEAT_SHM_BEND
Definition: str_feat_dtk.hpp:431
DTK_COUPLING_TANGENCY
@ DTK_COUPLING_TANGENCY
Definition: str_feat_dtk.hpp:247
Dtk_feat_revol::Dtk_feat_revol
Dtk_feat_revol()
Constructor of Revol Features.
DTK_FEAT_COMP_MATERIAL
@ DTK_FEAT_COMP_MATERIAL
Definition: str_feat_dtk.hpp:392
Dtk_feat_rotate
Definition: str_feat_dtk.hpp:4351
Dtk_feat_rotate_points::third_point
Dtk_pnt third_point
Definition: str_feat_dtk.hpp:4222
Dtk_feat_sheet_metal::~Dtk_feat_sheet_metal
~Dtk_feat_sheet_metal()
Destructor of a sheet Metal generic feature
Dtk_feat::get_name
int get_name(Dtk_string *)
Returns the feature name
Dtk_pipe_fiber_segment::SECTION_SET_POINT
SECTION_SET_POINT
Definition: str_feat_dtk.hpp:6342
DTK_UNKNOWN_BEHAVIOR
@ DTK_UNKNOWN_BEHAVIOR
Definition: str_feat_dtk.hpp:205
Dtk_feat_surface_transfo::get_element_id
int get_element_id(long *)
Returns the id of the element to transform, i.e to translate, to rotate or to symmetry.
Dtk_feat_edge_ribbon::propagation
PROPAGATION_TYPE propagation
Definition: str_feat_dtk.hpp:2330
Dtk_feat_SpotPoint::None
@ None
Definition: str_feat_dtk.hpp:6673
Dtk_feat::get_type_detk
type_detk get_type_detk() const
Definition: str_feat_dtk.hpp:6995
Dtk_feat_sweep::nb_profiles
int nb_profiles
Definition: str_feat_dtk.hpp:2697
Dtk_feat_sketch::axis
Dtk_feat_axis * axis
Definition: str_feat_dtk.hpp:603
Dtk_feat_scaling::get_reference
int get_reference(Dtk_feat_geometry **)
Gets the geometric reference of the scaling feature
Dtk_pipe_fiber_segment::DTK_TOP_RIGHT
@ DTK_TOP_RIGHT
Definition: str_feat_dtk.hpp:6345
Dtk_feat_draft_constant::neutral_element
Dtk_feat_draft_neutral_element * neutral_element
Definition: str_feat_dtk.hpp:4743
Dtk_feat_SpotPoint::Unspecified_Adhesive
@ Unspecified_Adhesive
Definition: str_feat_dtk.hpp:6644
catiav5w::inTransfo
const Dtk_string const Dtk_transfo & inTransfo
Definition: catiav5w.hpp:622
Dtk_feat_fillet_point::~Dtk_feat_fillet_point
~Dtk_feat_fillet_point()
DTK_FEAT_SHM_CUTOUT_CIRCULAR
@ DTK_FEAT_SHM_CUTOUT_CIRCULAR
Definition: str_feat_dtk.hpp:464
Dtk_feat_hole::dimension_tolerance
char * dimension_tolerance
Definition: str_feat_dtk.hpp:1618
DTK_FEAT_SHM_ROLLED_WALL
@ DTK_FEAT_SHM_ROLLED_WALL
Definition: str_feat_dtk.hpp:462
Dtk_feat_rotate_axis_elements::second_element
Dtk_feat_geometry * second_element
Definition: str_feat_dtk.hpp:4287
Dtk_feat_pipe::get_section_type
Dtk_ErrorStatus get_section_type(DTK_PIPE_SECTION_TYPE &outsectionType) const
Returns pipe section type
Dtk_feat_fillet_point::get_elt
int get_elt(Dtk_feat_geometry **)
Returns fillet point element
Dtk_feat_fillet::nb_objects_to_fillet
int nb_objects_to_fillet
Definition: str_feat_dtk.hpp:2437
Dtk_feat_multi_prism::get_prism_domains
int get_prism_domains(Dtk_tab< Dtk_feat_prism_domain * > &)
Returns the array of multi prism domains
Dtk_feat_revol::get_type
int get_type(DTK_REVOL_TYPE *)
Returns revol type.
NO_SWEEP_TYPE
@ NO_SWEEP_TYPE
Definition: str_feat_dtk.hpp:66
TANGENCY
@ TANGENCY
Definition: str_feat_dtk.hpp:134
Dtk_feat_boolean::get_combined_body
int get_combined_body(Dtk_FeaturePtr &)
Returns body feature operand consisting the combined body operand of the boolean operation
IND_DIAMETER
#define IND_DIAMETER
Definition: str_feat_dtk.hpp:27
Dtk_feat::get_face_fillet
int get_face_fillet(Dtk_feat_face_fillet **e)
Returns feature's inner Face Fillet Feature
Dtk_feat_pattern_dir::spacing
double spacing
Definition: str_feat_dtk.hpp:3086
Dtk_feat::GetFinalAssociatedGeometry
Dtk_feat_geometry * GetFinalAssociatedGeometry() const
Definition: str_feat_dtk.hpp:7070
Dtk_feat_split_surf
Generic Split Surface.
Definition: str_feat_dtk.hpp:2803
Dtk_feat_mirror::get_nb_elts
int get_nb_elts(int *)
Returns the number of elements to mirror.
Dtk_feat_hole::hole_limit
Dtk_feat_limit * hole_limit
Definition: str_feat_dtk.hpp:1603
Dtk_feat_sew_surf::intersect_mode
int intersect_mode
Definition: str_feat_dtk.hpp:2902
Dtk_feat_pattern_dir::get_length
int get_length(double *)
Returns the length of the pattern, I.E, the distance between the first and the last occurrence.
Dtk_feat::get_pipe
int get_pipe(Dtk_feat_pipe **e)
Returns feature's inner Pipe sub-feature.
Dtk_feat_surface_transfo::get_element_geometry
int get_element_geometry(Dtk_feat_geometry **)
Returns the geometry of the element to transform, i.e to translate, to rotate or to symmetry.
Dtk_feat_pattern::object_type
DTK_OBJECT_TYPE object_type
Definition: str_feat_dtk.hpp:3300
Dtk_feat_user_pattern::keep_spec
Bool keep_spec
Definition: str_feat_dtk.hpp:3522
Dtk_feat_fillet::get_propagation
int get_propagation(PROPAGATION_TYPE *)
Returns Fillet propagation
Dtk_feat_parting_element::Dtk_feat_parting_element
Dtk_feat_parting_element()
Dtk_Pipe_Section::Dtk_Pipe_Section
Dtk_Pipe_Section()
Constructor of Pipe Section
Dtk_feat_inner_thread::get_depth_with_tol
int get_depth_with_tol(double *, double *, double *)
Returns the thread depth with tolerance values if any.
Dtk_feat_sheet_metal::Dtk_feat_sheet_metal
Dtk_feat_sheet_metal()
Constructor of a sheet Metal generic feature
Dtk_feat_draft_constant::get_neutral_element
int get_neutral_element(Dtk_feat_draft_neutral_element **)
Returns the neutral element
Dtk_feat::GetFaceFillet
Dtk_feat_face_fillet * GetFaceFillet() const
Definition: str_feat_dtk.hpp:7141
Dtk_feat_user_defined::get_name
int get_name(Dtk_string &outName)
Get the User Defined Feature Name
Dtk_feat_draft::Dtk_feat_draft_type::reflect_line
Dtk_feat_draft_reflect_line * reflect_line
Definition: str_feat_dtk.hpp:5025
Dtk_feat_edge_ribbon::SetAsDeprecated
SetAsDeprecated("Undefined", "Use GetPropagationType") int get_propagation(Bool *)
OBSOLETE Returns edge ribbon propagation as Bool.
Dtk_feat::GetRotate
Dtk_feat_rotate * GetRotate() const
Definition: str_feat_dtk.hpp:7372
DTK_FEAT_ROTATE
@ DTK_FEAT_ROTATE
Definition: str_feat_dtk.hpp:336
Dtk_feat_mirror::get_reference
int get_reference(Dtk_feat_geometry **)
Returns the geometry reference to mirror.
DTK_PIPE_SECTION_TYPE
DTK_PIPE_SECTION_TYPE
Definition: str_feat_dtk.hpp:271
Dtk_feat_hole::GetReliefDepth
Dtk_Double64 GetReliefDepth() const
return the depth of the relief
Definition: str_feat_dtk.hpp:1959
Dtk_feat_translate_direction::distance
double distance
Definition: str_feat_dtk.hpp:3882
MINIMAL
@ MINIMAL
Definition: str_feat_dtk.hpp:135
NO_DTK_SHM_MODULE_TYPE
@ NO_DTK_SHM_MODULE_TYPE
Definition: str_feat_dtk.hpp:241
Dtk_feat::get_sheet_metal
int get_sheet_metal(Dtk_feat_sheet_metal **e)
Returns feature's Sheet Metal feature
Dtk_feat_loft_section::Dtk_feat_loft_section
Dtk_feat_loft_section()
Dtk_feat_sweep::get_center_curve
int get_center_curve(Dtk_feat_geometry **)
Get the center curve of the feature Sweep.
NO_PROPAGATION_TYPE
@ NO_PROPAGATION_TYPE
Definition: str_feat_dtk.hpp:136
Dtk_feat_hole::GetCounterDiameterTolerance
Dtk_feat_tolerance_set * GetCounterDiameterTolerance() const
Definition: str_feat_dtk.hpp:1846
Dtk_feat_pipe::_NodeTable
Dtk_tab< Dtk_pnt > _NodeTable
Definition: str_feat_dtk.hpp:6497
Dtk_feat_surface_transfo::isSurfaceResult
bool isSurfaceResult
Definition: str_feat_dtk.hpp:3647
DTK_LOFT_POSITIVE
@ DTK_LOFT_POSITIVE
Definition: str_feat_dtk.hpp:51
EXTREME_ANCHOR_POINT
@ EXTREME_ANCHOR_POINT
Definition: str_feat_dtk.hpp:121
Dtk_feat_SpotPoint::setNormal
void setNormal(double x, double y, double z)
Set SpotPoint normal.
Dtk_feat_loft::get_sections
int get_sections(Dtk_tab< Dtk_feat_loft_section * > &)
Returns array of loft sections.
COUNTER_DRILLED
@ COUNTER_DRILLED
Definition: str_feat_dtk.hpp:110
Dtk_feat_blend_vertex
Feature Blend Corner (pour les conges)
Definition: str_feat_dtk.hpp:2394
Dtk_feat_inner_thread::GetDepth
Dtk_Double64 GetDepth() const
Definition: str_feat_dtk.hpp:1330
Dtk_feat_sweep::get_axis
int get_axis(Dtk_feat_axis **)
Get axis of the feature Sweep.
Dtk_feat_chamfer::ribbons
Dtk_feat_chamfer_ribbon ** ribbons
Definition: str_feat_dtk.hpp:1161
Dtk_feat_fillet::get_trim_ribbon_mode
int get_trim_ribbon_mode(Bool *)
Returns Fillet trim ribbon mode
Dtk_feat_SpotPoint::Class_D
@ Class_D
Definition: str_feat_dtk.hpp:6682
Dtk_feat_loft::Dtk_feat_loft
Dtk_feat_loft()
Constructor of Loft Feature
Dtk_feat_chamfer_ribbon::get_reverse
int get_reverse(Bool *)
Returns reverse value for a ribbon
Dtk_feat_user_defined_value::get_value_integer
int get_value_integer(int &outValue)
Get the User Defined Value.
DTK_FEAT_COMP_PRELIMINARY_DESIGN
@ DTK_FEAT_COMP_PRELIMINARY_DESIGN
Definition: str_feat_dtk.hpp:403
Dtk_feat::get_tritangent_fillet
int get_tritangent_fillet(Dtk_feat_tritangent_fillet **e)
Returns feature's inner Tri-tangent Fillet Feature
Dtk_string
This is a high level string class.
Definition: dtk_string.hpp:53
Dtk_feat_hole
Hole Feature : position, direction, type, diameter, anchorpoint of hole feature.
Definition: str_feat_dtk.hpp:1596
Dtk_feat_pipe::_StartSection
Dtk_Pipe_Section * _StartSection
Definition: str_feat_dtk.hpp:6484
Dtk_feat_draft_variable::Dtk_feat_draft_variable
Dtk_feat_draft_variable()
Constructor of Variable Draft Feature
Dtk_feat_stiffener::get_thick1
int get_thick1(double *)
Gets the first thickness of the stiffener feature
Dtk_feat_stiffener::thick2
double thick2
Definition: str_feat_dtk.hpp:5206
DTK_BODY_TYPE
DTK_BODY_TYPE
Definition: str_feat_dtk.hpp:70
Dtk_feat_multi_prism::prism_domains
Dtk_tab< Dtk_feat_prism_domain * > prism_domains
Definition: str_feat_dtk.hpp:5892
Dtk_feat_SpotPoint::isInspectionFlag
bool isInspectionFlag() const
Return SpotPoint inspection flag.
Dtk_feat_udf
Dtk_feat_udf : _Hole, _XmlDefinition of feature.
Definition: str_feat_dtk.hpp:2058
Dtk_feat_hole::get_inner_thread
int get_inner_thread(Dtk_feat_inner_thread **)
Returns the inner thread if any.
DTK_SHM_DESIGN
@ DTK_SHM_DESIGN
Definition: str_feat_dtk.hpp:236
Dtk_feat::input_geometry
Dtk_feat_geometry * input_geometry
Definition: str_feat_dtk.hpp:6885
Dtk_feat_user_defined_value::get_value_node_connector
int get_value_node_connector(Dtk_NodeConnectorPtr &outValue)
Get the User Defined Value - Node Connector to retrieve geometric entities using _ReadConnectedEntity...
Dtk_feat_draft_variable::neutral_element
Dtk_feat_draft_neutral_element * neutral_element
Definition: str_feat_dtk.hpp:4809
Dtk_feat_chamfer_ribbon::get_nb_objects
int get_nb_objects(int *)
Returns objects number for each ribbon
Dtk_feat_thread::get_support_diameter_has_tol
int get_support_diameter_has_tol(Bool *)
Tests whether there is a tolerance set on support diameter.
DTK_DIRECTION_DISTANCE
@ DTK_DIRECTION_DISTANCE
Definition: str_feat_dtk.hpp:215
Dtk_feat_surface_transfo::elementGeomtry
Dtk_feat_geometry * elementGeomtry
Definition: str_feat_dtk.hpp:3644
TRANSLATE_TYPE
TRANSLATE_TYPE
Definition: str_feat_dtk.hpp:214
Dtk_feat_draft_advanced::fitted_parameter
double fitted_parameter
Definition: str_feat_dtk.hpp:4918
Dtk_feat_pattern::nb_instances
int nb_instances
Definition: str_feat_dtk.hpp:3294
Dtk_feat_circ_pattern::get_crown_thickness
int get_crown_thickness(double *)
Returns the maximum distance allowed between the first and the last circle of a crown (thickness of t...
Dtk_feat_mirror::get_nb_input_ids
int get_nb_input_ids(int *)
Returns the number of feature's IDs to mirror.
DTK_FEAT_SHM_STAMP_CIRCULAR
@ DTK_FEAT_SHM_STAMP_CIRCULAR
Definition: str_feat_dtk.hpp:470
Dtk_feat_inner_thread::get_pitch_has_tol
int get_pitch_has_tol(Bool *)
Tests whether there is a tolerance set on thread pitch.
Dtk_feat_hole::get_limit
int get_limit(Dtk_feat_limit **)
Returns the hole limit.
Dtk_feat_SpotPoint::Adhesive
@ Adhesive
Definition: str_feat_dtk.hpp:6627
Dtk_feat_draft::get_default_direction
int get_default_direction(Dtk_feat_axis **)
Returns the default draft direction.
Dtk_feat_chamfer_ribbon::objects
Dtk_feat_geometry ** objects
Definition: str_feat_dtk.hpp:1112
Dtk_feat_circ_pattern::~Dtk_feat_circ_pattern
~Dtk_feat_circ_pattern()
Dtk_feat_rotate::surfaceRotate
Dtk_feat_surface_transfo * surfaceRotate
Definition: str_feat_dtk.hpp:4356
Dtk_feat_thickness
Thickness Feature.
Definition: str_feat_dtk.hpp:731
Dtk_feat::body_id
long body_id
Definition: str_feat_dtk.hpp:6882
DTK_FEAT_SURF_UNKNOWN
@ DTK_FEAT_SURF_UNKNOWN
Definition: str_feat_dtk.hpp:411
Dtk_feat_hole::get_depth
int get_depth(double *)
Returns the hole depth.
Dtk_feat::get_final_associated_geometry
int get_final_associated_geometry(Dtk_feat_geometry **)
Returns inner feature's final associated geometry, i.e. geometry that appears on the final Brep model
Dtk_feat_fillet_point::point
Dtk_pnt point
Definition: str_feat_dtk.hpp:2219
DTK_PIPE_CONDUIT_RUN
@ DTK_PIPE_CONDUIT_RUN
Definition: str_feat_dtk.hpp:258
Dtk_feat_rotate::dtk_rotate_type
Definition: str_feat_dtk.hpp:4358
SECOND_SIDE
@ SECOND_SIDE
Definition: str_feat_dtk.hpp:192
DTK_FEAT_UNION_TRIM
@ DTK_FEAT_UNION_TRIM
Definition: str_feat_dtk.hpp:331
Dtk_feat_inner_thread::thread_definition_value
Dtk_string thread_definition_value
Definition: str_feat_dtk.hpp:1253
Dtk_feat_draft_side::get_direction
int get_direction(Dtk_feat_axis **)
Returns the draft direction according to the specified draft side.
Dtk_pipe_fiber_segment::get_start_point
DtkErrorStatus get_start_point(Dtk_pnt &startPointOut) const
Returns fiber start Point
KEEP_ANGLE
@ KEEP_ANGLE
Definition: str_feat_dtk.hpp:140
Dtk_feat_rotate::get_three_points_rotate
int get_three_points_rotate(Dtk_feat_rotate_points **)
Returns "Three Points " rotate entity
Dtk_feat_face_fillet::limitingElement
Dtk_feat_geometry * limitingElement
Definition: str_feat_dtk.hpp:2542
Dtk_feat_thickness_feat::defaultThickness
double defaultThickness
Definition: str_feat_dtk.hpp:5733
DTK_PIPE_LINE
@ DTK_PIPE_LINE
Definition: str_feat_dtk.hpp:261
Dtk_feat_axis::direction
Dtk_dir direction
Definition: str_feat_dtk.hpp:564
SELECTION_MODE
SELECTION_MODE
Definition: str_feat_dtk.hpp:170
Dtk_feat_draft_var_point::get_ratio
int get_ratio(double *)
Returns draft point ratio on attached edge
Dtk_feat_remove_face::get_faces_to_remove
int get_faces_to_remove(Dtk_tab< Dtk_feat_geometry * > &)
Returns the array of faces to remove of the remove face feature
Dtk_feat_blend_vertex::get_corner
int get_corner(Dtk_feat_geometry **)
Returns corner of blend vertex
Dtk_feat_hole::GetSupport
Dtk_feat_geometry * GetSupport() const
Definition: str_feat_dtk.hpp:1702
Dtk_feat_hole::HasDepthTolerance
Dtk_bool HasDepthTolerance() const
Definition: str_feat_dtk.hpp:1784
Dtk_feat_prism::anchor
Cartesian_point ** anchor
Definition: str_feat_dtk.hpp:879
Dtk_feat_draft_advanced::neutral_element
Dtk_feat_draft_neutral_element * neutral_element
Definition: str_feat_dtk.hpp:4920
REFERENCE_SURFACE
@ REFERENCE_SURFACE
Definition: str_feat_dtk.hpp:142
Dtk_feat::dtk_feat_type::hole
Dtk_feat_hole * hole
Definition: str_feat_dtk.hpp:6909
Dtk_feat_prism::~Dtk_feat_prism
~Dtk_feat_prism()
Destructor of a prism feature.
Dtk_feat_draft_var_point::Dtk_feat_draft_var_point
Dtk_feat_draft_var_point()
Dtk_feat_hole_series
Hole Feature : position, direction, type, diameter, anchorpoint of hole feature.
Definition: str_feat_dtk.hpp:2004
Dtk_feat_sweep::selection
Dtk_feat_geometry * selection
Definition: str_feat_dtk.hpp:2693
Dtk_feat_prism::get_end_limit
int get_end_limit(Dtk_feat_limit **)
Returns the first limit feature.
Dtk_feat_thick_surf::Dtk_feat_thick_surf
Dtk_feat_thick_surf()
DTK_FEAT_ADD
@ DTK_FEAT_ADD
Definition: str_feat_dtk.hpp:327
DTK_PIPE_ELEC3D
@ DTK_PIPE_ELEC3D
Definition: str_feat_dtk.hpp:265
Dtk_feat_boolean::~Dtk_feat_boolean
~Dtk_feat_boolean()
Dtk_feat_inner_thread::SetAsDeprecated
SetAsDeprecated("2024.2", "Use GetDefinitionValue()") int get_def_value(wchar_t **)
Returns the thread standard definition value if any.
DTK_UNKNOWN_PATTERN
@ DTK_UNKNOWN_PATTERN
Definition: str_feat_dtk.hpp:150
Dtk_feat_face_fillet::get_limiting_element
int get_limiting_element(Dtk_feat_geometry **)
Returns Face Fillet limiting element
Dtk_feat_rotate_points::~Dtk_feat_rotate_points
~Dtk_feat_rotate_points()
Destructor a a "Three Points" rotation Feature
Dtk_feat_hole::end_params
Dtk_hole_params end_params
Definition: str_feat_dtk.hpp:1626
Dtk_feat_draft_advanced::get_neutral_element
int get_neutral_element(Dtk_feat_draft_neutral_element **)
Returns array of draft's sides (one or two sides)
NO_NODE_TYPE
@ NO_NODE_TYPE
Definition: str_feat_dtk.hpp:200
Dtk_feat_loft::get_type
int get_type(DTK_LOFT_TYPE *)
Returns Loft type
Dtk_feat_scaling::Dtk_feat_scaling
Dtk_feat_scaling()
Constructor of Scaling Feature
Dtk_feat_chamfer::get_length2
int get_length2(double *a)
Returns Chamfer Length2
Dtk_feat_draft::Dtk_feat_draft_type::advanced_draft
Dtk_feat_draft_advanced * advanced_draft
Definition: str_feat_dtk.hpp:5026
Dtk_feat_edge_ribbon::ribbon_type
FILLET_TYPE ribbon_type
Definition: str_feat_dtk.hpp:2333
Dtk_feat_circ_pattern::offset
Dtk_Double64 offset
Definition: str_feat_dtk.hpp:3209
Dtk_feat_inner_thread::thread_limit_type
DTK_THREAD_LIMIT_TYPE thread_limit_type
Definition: str_feat_dtk.hpp:1263
Dtk_feat_chamfer::chamfer_params
Dtk_chamfer_params chamfer_params
Definition: str_feat_dtk.hpp:1159
Bool
#define Bool
Definition: define.h:718
Dtk_feat::get_prism
int get_prism(Dtk_feat_prism **e)
Returns feature's inner Prism Feature (PAD|POCKET)
Dtk_feat_translate::isSurfaceTranslate
bool isSurfaceTranslate
Definition: str_feat_dtk.hpp:4067
Dtk_feat_node::get_type
int get_type(NODE_TYPE *)
Gets the node type
Dtk_feat_mirror::Dtk_feat_mirror
Dtk_feat_mirror()
DTK_FEAT_MULTI_PAD
@ DTK_FEAT_MULTI_PAD
Definition: str_feat_dtk.hpp:341
Dtk_feat_pipe::get_Diameter
DtkErrorStatus get_Diameter(double &outDiameter) const
Returns Pipe Section Diameter (Available for Round Section)
Dtk_feat_close_surf::get_tolerance
int get_tolerance(double *)
Returns the tolerance of the close surface feature.
Dtk_feat_shell::~Dtk_feat_shell
~Dtk_feat_shell()
Destructor of a shell feature.
Dtk_feat::dtk_feat_type::fillet
Dtk_feat_fillet * fillet
Definition: str_feat_dtk.hpp:6896
Dtk_feat_limit::LIMIT_TYPE
LIMIT_TYPE
Definition: str_feat_dtk.hpp:619
Dtk_feat_draft_neutral_element
Draft Neutral Element.
Definition: str_feat_dtk.hpp:4516
DTK_PIPE_CONVEYOR_RUN
@ DTK_PIPE_CONVEYOR_RUN
Definition: str_feat_dtk.hpp:255
Dtk_feat_chamfer::Dtk_feat_chamfer
Dtk_feat_chamfer()
Dtk_feat_thick_surf::get_sens_offset
int get_sens_offset(Bool *)
Returns the reverse direction boolean value
Dtk_feat_hole::get_bottom_angle_with_tol
int get_bottom_angle_with_tol(double *, double *, double *)
Gets the hole bottom angle with its tolerance value (inf value & sup value)
Dtk_pipe_fiber_segment::DTK_CENTER_CENTER
@ DTK_CENTER_CENTER
Definition: str_feat_dtk.hpp:6347
Dtk_feat_inner_thread::GetTypeAsString
Dtk_string GetTypeAsString() const
Dtk_feat::Dtk_feat
Dtk_feat()
BaseConstructor of a generic feature
Dtk_feat_SpotPoint::Material
Material
Definition: str_feat_dtk.hpp:6652
Dtk_feat_hole::get_diameter_with_tol
int get_diameter_with_tol(double *, double *, double *)
Gets the hole diameter with its tolerance value (inf value & sup value)
DTK_FEAT_SHM_CUTOUT
@ DTK_FEAT_SHM_CUTOUT
Definition: str_feat_dtk.hpp:438
Dtk_feat_pattern::get_objects_to_pattern
int get_objects_to_pattern(Dtk_tab< Dtk_feat_geometry * > &)
Returns the set of objects geometry to pattern.
Dtk_feat::dtk_feat_type::pattern
Dtk_feat_pattern * pattern
Definition: str_feat_dtk.hpp:6926
Dtk_feat_hole::get_annotation
int get_annotation(Dtk_pnt *, char *)
Dtk_feat_draft_advanced::selection
SELECTION_MODE selection
Definition: str_feat_dtk.hpp:4914
Dtk_feat_translate::get_type
int get_type(TRANSLATE_TYPE *)
Returns the type of the translate feature.
Dtk_feat_sketch
Definition: str_feat_dtk.hpp:598
Dtk_feat::dtk_feat_type::draft
Dtk_feat_draft * draft
Definition: str_feat_dtk.hpp:6900
Dtk_feat_draft_variable::var_points
Dtk_feat_draft_var_point ** var_points
Definition: str_feat_dtk.hpp:4811
Dtk_feat_hole::start_params
Dtk_hole_params start_params
Definition: str_feat_dtk.hpp:1620
Dtk_feat_hole_series::get_dtk_feat_hole_series_middle
void get_dtk_feat_hole_series_middle(Dtk_FeaturePtr &out)
Gets the hole middle.
Dtk_feat_draft_constant::get_form
int get_form(DRAFT_FORM *)
Returns Constant Draft Form
DTK_BOOLEAN_ASSEMBLE
@ DTK_BOOLEAN_ASSEMBLE
Definition: str_feat_dtk.hpp:35
Dtk_feat_SpotPoint::setMaterial
void setMaterial(Material p_material)
Set SpotPoint material.
DTK_USER_DEFINED_ANGLE
@ DTK_USER_DEFINED_ANGLE
Definition: str_feat_dtk.hpp:6082
DTK_FEAT_PATTERN
@ DTK_FEAT_PATTERN
Definition: str_feat_dtk.hpp:317
Dtk_feat_SpotPoint::~Dtk_feat_SpotPoint
~Dtk_feat_SpotPoint()
Destructor.
Dtk_feat_surf_feature
Definition: str_feat_dtk.hpp:6195
IND_ANGLE
#define IND_ANGLE
Definition: str_feat_dtk.hpp:23
Dtk_feat_sweep::get_merge_ends
int get_merge_ends(Bool *)
Get the boolean value of merge sweep ends of the feature Sweep.
Dtk_feat_user_pattern::points
Dtk_tab< Dtk_pnt > points
Definition: str_feat_dtk.hpp:3519
NO_DRAFT_TYPE
@ NO_DRAFT_TYPE
Definition: str_feat_dtk.hpp:167
Dtk_feat_user_pattern::input_ids
Dtk_tab< long > input_ids
Definition: str_feat_dtk.hpp:3520
Dtk_feat_loft::get_relimited_end_section
int get_relimited_end_section(Bool *)
Returns boolean value whether the loft is restricted from the start.
Dtk_bool
char Dtk_bool
Definition: define.h:717
Dtk_feat_pipe::Dtk_feat_pipe
Dtk_feat_pipe()
Dtk_feat_hole::GetCounterAngleTolerance
Dtk_feat_tolerance_set * GetCounterAngleTolerance() const
Definition: str_feat_dtk.hpp:1909
Dtk_feat_body::isVisible
Bool isVisible
Definition: str_feat_dtk.hpp:5995
DTK_FEAT_SHM_BEND_FROM_FLAT
@ DTK_FEAT_SHM_BEND_FROM_FLAT
Definition: str_feat_dtk.hpp:430
Dtk_feat_multi_prism::get_domains_nb
int get_domains_nb(int *)
Returns the number of multi prism domains
Dtk_feat_translate_point::start_point
Dtk_pnt start_point
Definition: str_feat_dtk.hpp:3933
Dtk_feat_pattern::type
DTK_PATTERN_TYPE type
Definition: str_feat_dtk.hpp:3299
Dtk_feat_user_pattern::sketch
Dtk_feat_sketch * sketch
Definition: str_feat_dtk.hpp:3516
Dtk_feat_loft::get_sections_nb
int get_sections_nb(int *)
Returns number of Loft sections.
Dtk_feat_chamfer::nb_ribbons
int nb_ribbons
Definition: str_feat_dtk.hpp:1162
Dtk_feat_limit::Dtk_feat_limit
Dtk_feat_limit()
DTK_THREAD_SUPPORT_DEPTH
@ DTK_THREAD_SUPPORT_DEPTH
Definition: str_feat_dtk.hpp:288
Dtk_feat_hole::GetStartAngle
Dtk_Double64 GetStartAngle() const
return the angle of the start chamfer
Definition: str_feat_dtk.hpp:1932
Dtk_feat_pipe::get_Width
DtkErrorStatus get_Width(double &outWidth) const
Returns Pipe Section Width (Available for Rectangular, Flat Oval, Radius Corner and Double Ridge Sect...
Dtk_feat_inner_thread::get_pitch_with_tol
int get_pitch_with_tol(double *, double *, double *)
Returns the thread pitch with tolerance values if any.
Dtk_feat::dtk_feat_type::rotate
Dtk_feat_rotate * rotate
Definition: str_feat_dtk.hpp:6930
Dtk_feat_hole_series::Dtk_feat_hole_series
Dtk_feat_hole_series()
Constructor of Hole Feature
Dtk_feat_mirror::get_isMirror
int get_isMirror(bool *)
Returns boolean value to denote whether it is a mirror or symmetric feature
Dtk_feat_inner_thread::HasDiameterTolerance
Dtk_bool HasDiameterTolerance() const
Definition: str_feat_dtk.hpp:1319
Dtk_feat_SpotPoint::Dtk_feat_SpotPoint
Dtk_feat_SpotPoint(const Dtk_pnt &p_location, const Dtk_dir &p_normal, double p_diameter, ProcessCategory p_category, ProcessType p_type, Robustness p_robustness, Regulation p_regulation, Finish p_finish, Material p_material)
Parameters Constructor.
CST_RADIUS
@ CST_RADIUS
Definition: str_feat_dtk.hpp:89
Dtk_feat_hole::get_depth_with_tol
int get_depth_with_tol(double *, double *, double *)
Gets the hole depth with its tolerance value (inf value & sup value)
Dtk_feat_rect_pattern::first_dir
Dtk_feat_pattern_dir * first_dir
Definition: str_feat_dtk.hpp:3171
Dtk_feat::GetId
int GetId() const
Definition: str_feat_dtk.hpp:7029
Dtk_feat_multi_prism::type
DTK_PRISM_TYPE type
Definition: str_feat_dtk.hpp:5894
Dtk_feat_tritangent_fillet::~Dtk_feat_tritangent_fillet
~Dtk_feat_tritangent_fillet()
DTK_FEAT_ASSEMBLE
@ DTK_FEAT_ASSEMBLE
Definition: str_feat_dtk.hpp:330
Dtk_feat_sheet_metal::get_shm_feat_type
int get_shm_feat_type(DTK_SHM_FEATURE_TYPE *)
Gets the Sheet Metal feature type
Dtk_feat_draft::~Dtk_feat_draft
~Dtk_feat_draft()
Destructor of a draft feature.
Dtk_feat_user_defined::name
Dtk_string name
Definition: str_feat_dtk.hpp:6161
Dtk_feat_sew_surf::simplify_mode
int simplify_mode
Definition: str_feat_dtk.hpp:2903
Dtk_feat_stiffener::~Dtk_feat_stiffener
~Dtk_feat_stiffener()
Destructor of a Stiffener feature.
Dtk_feat_chamfer::get_propagation
int get_propagation(PROPAGATION_TYPE *)
Returns Chamfer propagation
Dtk_feat_body
Definition: str_feat_dtk.hpp:5990
Dtk_feat_hole::relief_params
Dtk_hole_params relief_params
Definition: str_feat_dtk.hpp:1622
Dtk_pipe_fiber_segment::DTK_BOTTOM_CENTER
@ DTK_BOTTOM_CENTER
Definition: str_feat_dtk.hpp:6350
Dtk_feat_SpotPoint::setRegulation
void setRegulation(Dtk_string const &p_regulation)
Set SpotPoint regulation.
COUNTER_SUNK
@ COUNTER_SUNK
Definition: str_feat_dtk.hpp:109
Dtk_feat_thickness_face::get_face
int get_face(Dtk_feat_geometry **)
Get the face geometry of the feature Thickness Face.
Dtk_feat_hole::get_anchor_type
int get_anchor_type(ANCHOR_TYPE *)
Gets the hole anchor type if any.
DTK_SHM_FEATURE_TYPE
DTK_SHM_FEATURE_TYPE
Sheet Metal Feature types
Definition: str_feat_dtk.hpp:419
Dtk_feat_draft_neutral_element::get_profiles
int get_profiles(Dtk_feat_geometry ***)
Returns Neutral Element geometric List
Dtk_feat_pattern::dtk_features
Dtk_tab< Dtk_FeaturePtr > dtk_features
Definition: str_feat_dtk.hpp:3286
Dtk_feat_sew_surf::split
Dtk_feat_split_surf * split
Definition: str_feat_dtk.hpp:2901
Dtk_feat_stiffener::get_thick2
int get_thick2(double *)
Gets the second thickness of the stiffener feature
Dtk_feat_draft::Dtk_feat_draft_type
Definition: str_feat_dtk.hpp:5022
Dtk_feat_prism
Prism Feature : A Prism extrudes a profile along a specific direction. A Pad adds material,...
Definition: str_feat_dtk.hpp:867
Dtk_feat_remove_face::get_faces_to_keep
int get_faces_to_keep(Dtk_tab< Dtk_feat_geometry * > &)
Returns the array of faces to keep of the remove face feature
Dtk_feat_loft_section::get_closing_point
int get_closing_point(Dtk_feat_geometry **)
Returns section closing point.
Dtk_Double64
double Dtk_Double64
Definition: define.h:691
Dtk_feat_sheet_metal::shm_feat_type
DTK_SHM_FEATURE_TYPE shm_feat_type
Definition: str_feat_dtk.hpp:6259
DTK_THREE_PNTS
@ DTK_THREE_PNTS
Definition: str_feat_dtk.hpp:224
Dtk_feat_thread::get_support_depth
int get_support_depth(double *)
Returns the thread support surface depth.
Dtk_feat_user_defined_value::get_value_double
int get_value_double(double &outValue)
Get the User Defined Value.
Dtk_feat_udf::_Feature
Dtk_FeaturePtr _Feature
Definition: str_feat_dtk.hpp:2062
DTK_PIPE_ELBOW
@ DTK_PIPE_ELBOW
Definition: str_feat_dtk.hpp:262
COUPLING_TYPE
COUPLING_TYPE
Definition: str_feat_dtk.hpp:245
Dtk_feat_replace_face::Dtk_feat_replace_face
Dtk_feat_replace_face()
Constructor of Replace Face Feature
Dtk_feat_circ_pattern::axial_reference
Dtk_feat_pattern_dir * axial_reference
Definition: str_feat_dtk.hpp:3205
Dtk_feat_loft_section::~Dtk_feat_loft_section
~Dtk_feat_loft_section()
Dtk_feat_chamfer::get_length1
int get_length1(double *a)
Returns Chamfer Length1
Dtk_feat_user_defined::get_type
int get_type(Dtk_string &outType)
Get the User Defined Feature type
Dtk_feat_mirror::object_to_mirror
Dtk_feat_geometry ** object_to_mirror
Definition: str_feat_dtk.hpp:3698
Dtk_feat_sheet_metal::get_shm_module_type
int get_shm_module_type(DTK_SHM_MODULE_TYPE *)
Gets the Sheet Metal module type
Dtk_feat_blend_vertex::corner
Dtk_feat_geometry * corner
Definition: str_feat_dtk.hpp:2398
DTK_PIPE_SPLINE
@ DTK_PIPE_SPLINE
Definition: str_feat_dtk.hpp:264
Dtk_feat_hole::GetAxis
Dtk_feat_axis * GetAxis() const
Definition: str_feat_dtk.hpp:1712
Dtk_feat_hole::thread
Dtk_feat_inner_thread * thread
Definition: str_feat_dtk.hpp:1611
Dtk_feat_draft_variable::~Dtk_feat_draft_variable
~Dtk_feat_draft_variable()
Destructor of a variable draft feature.
Dtk_feat_prism::sym
Bool sym
Definition: str_feat_dtk.hpp:873
DTK_FEAT_CHAMFER
@ DTK_FEAT_CHAMFER
Definition: str_feat_dtk.hpp:312
Dtk_feat_draft::draft_faces
Dtk_feat_geometry ** draft_faces
Definition: str_feat_dtk.hpp:5033
DTK_BOOLEAN_TYPE
DTK_BOOLEAN_TYPE
Definition: str_feat_dtk.hpp:31
Dtk_feat_thread::get_direction_reversed
int get_direction_reversed(Bool *)
Returns thread direction reversed.
Dtk_feat_hole::Dtk_feat_hole
Dtk_feat_hole()
Constructor of Hole Feature
Dtk_feat_pattern::active_instances
Bool * active_instances
Definition: str_feat_dtk.hpp:3284
Dtk_feat_pipe::get_CornerRadius
DtkErrorStatus get_CornerRadius(double &outCornerRadius) const
Returns Pipe Section Radius (Available for Radius Corner Section)
Dtk_pipe_fiber_segment::get_OrientationPlane
DtkErrorStatus get_OrientationPlane(Dtk_PlaneSurfacePtr &outOrientationPlane) const
Returns Orientation Plane.
Dtk_feat_axis::GetDirection
Dtk_dir GetDirection() const
Definition: str_feat_dtk.hpp:590
Dtk_feat_hole_series::_End
Dtk_FeaturePtr _End
Definition: str_feat_dtk.hpp:2010
Dtk_feat_pattern::input_ids
Dtk_tab< long > input_ids
Definition: str_feat_dtk.hpp:3287
Dtk_hole_params
double Dtk_hole_params[3]
Definition: str_feat_dtk.hpp:855
Dtk_feat_sweep::get_type
int get_type(DTK_SWEEP_TYPE *)
Returns Sweep type
Dtk_feat_tolerance_set::GetInferiorTolerance
Dtk_Double64 GetInferiorTolerance() const
Definition: str_feat_dtk.hpp:849
DTK_FEAT_SURF_PAD
@ DTK_FEAT_SURF_PAD
Definition: str_feat_dtk.hpp:323
Dtk_feat_pattern_dir::tabInstanceSpacingValues
Dtk_tab< double > tabInstanceSpacingValues
Definition: str_feat_dtk.hpp:3092
Dtk_feat_pattern_dir::nb_instances
int nb_instances
Definition: str_feat_dtk.hpp:3087
Dtk_feat_translate_point
Definition: str_feat_dtk.hpp:3931
Dtk_feat::get_sew_surf
int get_sew_surf(Dtk_feat_sew_surf **e)
Returns feature's inner sew surface feature
Dtk_feat_SpotPoint::isGeometryFlag
bool isGeometryFlag() const
Return SpotPoint geometry flag.
Dtk_feat::GetInputGeometry
Dtk_feat_geometry * GetInputGeometry() const
Definition: str_feat_dtk.hpp:7039
Dtk_feat::dtk_feat_type::thread
Dtk_feat_thread * thread
Definition: str_feat_dtk.hpp:6894
DTK_FEAT_IMPORT
@ DTK_FEAT_IMPORT
Definition: str_feat_dtk.hpp:358
Dtk_feat_inner_thread::IsRightThreaded
Dtk_bool IsRightThreaded() const
Definition: str_feat_dtk.hpp:1388
Dtk_feat::get_spot_point
int get_spot_point(Dtk_feat_SpotPoint *&e)
Returns SpotPoint feature.
DTK_FEAT_SHM_SPLIT
@ DTK_FEAT_SHM_SPLIT
Definition: str_feat_dtk.hpp:439
DRAFT_TYPE
DRAFT_TYPE
Definition: str_feat_dtk.hpp:162
Dtk_feat_pattern::Dtk_feat_pattern
Dtk_feat_pattern()
Dtk_feat_multi_prism::profiles
Dtk_feat_geometry * profiles
Definition: str_feat_dtk.hpp:5890
DTK_PIPE_TYPE
DTK_PIPE_TYPE
Definition: str_feat_dtk.hpp:253
Dtk_feat_pipe::_CornerRadius
double _CornerRadius
Definition: str_feat_dtk.hpp:6494
Dtk_feat_loft
Generic Feature Loft.
Definition: str_feat_dtk.hpp:5524
Dtk_feat::dtk_feat_type::boolean_op
Dtk_feat_boolean * boolean_op
Definition: str_feat_dtk.hpp:6936
NO_PROFILE_CONTROL_TYPE
@ NO_PROFILE_CONTROL_TYPE
Definition: str_feat_dtk.hpp:143
Dtk_feat_draft_side::get_neutral_element
int get_neutral_element(Dtk_feat_draft_neutral_element **)
Returns the draft neutral element
Dtk_pipe_fiber_segment::get_end_point
DtkErrorStatus get_end_point(Dtk_pnt &endPointOut) const
Returns fiber End Point
Dtk_feat_revol::axis
Dtk_feat_axis * axis
Definition: str_feat_dtk.hpp:1003
Dtk_feat_rotate::isSurfaceRotate
bool isSurfaceRotate
Definition: str_feat_dtk.hpp:4355
Dtk_feat_draft_var_point::point_construction
DTK_POINT_CONSTRUCTION point_construction
Definition: str_feat_dtk.hpp:4630
Dtk_feat_boolean::combined_body
Dtk_FeaturePtr combined_body
Definition: str_feat_dtk.hpp:4459
Dtk_feat_split_surf::Dtk_feat_split_surf
Dtk_feat_split_surf()
Dtk_feat_chamfer_ribbon
Chamfer ribbon.
Definition: str_feat_dtk.hpp:1108
EXTRACTION_DIRECTION
@ EXTRACTION_DIRECTION
Definition: str_feat_dtk.hpp:141
Dtk_feat_inner_thread::normal_to_surface
Bool normal_to_surface
Definition: str_feat_dtk.hpp:1260
Dtk_feat_loft::get_guides_nb
int get_guides_nb(int *)
Returns number of Loft guides.
Dtk_feat_draft_variable::get_var_points
int get_var_points(Dtk_feat_draft_var_point ***)
Returns array of draft points of a variable Draft
Dtk_feat_user_pattern::object_type
DTK_OBJECT_TYPE object_type
Definition: str_feat_dtk.hpp:3525
Dtk_feat_circ_pattern::get_radial_alignment
int get_radial_alignment(Bool *)
Returns the radial alignment defining the orientation of the created occurrences.
Dtk_feat_limit::get_type
int get_type(LIMIT_TYPE *)
Returns limit type.
Dtk_feat_draft_constant::Dtk_feat_draft_constant
Dtk_feat_draft_constant()
Constructor of standard constant Draft Feature
NO_DTK_BOOLEAN_TYPE
@ NO_DTK_BOOLEAN_TYPE
Definition: str_feat_dtk.hpp:38
DTK_FEAT_GROOVE
@ DTK_FEAT_GROOVE
Definition: str_feat_dtk.hpp:303
Dtk_feat_SpotPoint::Resistance
@ Resistance
Definition: str_feat_dtk.hpp:6633
Dtk_feat_draft::Dtk_feat_draft_type::cte_angle
Dtk_feat_draft_constant * cte_angle
Definition: str_feat_dtk.hpp:5023
Dtk_feat_fillet
Generic Feature Fillet.
Definition: str_feat_dtk.hpp:2429
DTK_BODY_SOLID
@ DTK_BODY_SOLID
Definition: str_feat_dtk.hpp:72
Dtk_feat_loft::loftType
DTK_LOFT_TYPE loftType
Definition: str_feat_dtk.hpp:5542
Dtk_feat_hole::GetReliefDiameter
Dtk_Double64 GetReliefDiameter() const
return the diameter of the relief
Definition: str_feat_dtk.hpp:1954
Dtk_feat_close_surf::~Dtk_feat_close_surf
~Dtk_feat_close_surf()
Dtk_feat_draft_side
Draft Side.
Definition: str_feat_dtk.hpp:4570
Dtk_feat_draft_neutral_element::get_profiles_nb
int get_profiles_nb(int *)
Returns number of profiles of the neutral element.
Dtk_feat_translate::type
TRANSLATE_TYPE type
Definition: str_feat_dtk.hpp:4066
DTK_FEAT_COMP_PLY_SECTION
@ DTK_FEAT_COMP_PLY_SECTION
Definition: str_feat_dtk.hpp:391
Dtk_feat_user_defined_value::doubleValue
double doubleValue
Definition: str_feat_dtk.hpp:6094
Dtk_feat_surface_transfo::~Dtk_feat_surface_transfo
~Dtk_feat_surface_transfo()
DTK_FEAT_COMP_PLY
@ DTK_FEAT_COMP_PLY
Definition: str_feat_dtk.hpp:389
ROTATE_TYPE
ROTATE_TYPE
Definition: str_feat_dtk.hpp:221
DTK_NO_SECTION
@ DTK_NO_SECTION
Definition: str_feat_dtk.hpp:272
Dtk_feat_thread::inner_thread
Dtk_feat_inner_thread * inner_thread
Definition: str_feat_dtk.hpp:1466
DTK_FEAT_REPLACE_FACE
@ DTK_FEAT_REPLACE_FACE
Definition: str_feat_dtk.hpp:366
Dtk_pipe_fiber_segment::startPoint
Dtk_pnt startPoint
Definition: str_feat_dtk.hpp:6354
Dtk_feat_hole::get_diameter
int get_diameter(double *)
Returns the hole diameter.
DTK_BODY_SURFACE
@ DTK_BODY_SURFACE
Definition: str_feat_dtk.hpp:73
Dtk_feat_thickness::neutralFiber
Bool neutralFiber
Definition: str_feat_dtk.hpp:737
Dtk_feat_sew_surf::~Dtk_feat_sew_surf
~Dtk_feat_sew_surf()
Dtk_feat_chamfer_ribbon::Dtk_feat_chamfer_ribbon
Dtk_feat_chamfer_ribbon()
Dtk_feat_var_edge_ribbon::Dtk_feat_var_edge_ribbon
Dtk_feat_var_edge_ribbon()
Dtk_feat_circ_pattern::radial_alignment
Bool radial_alignment
Definition: str_feat_dtk.hpp:3211
Dtk_feat_scaling::~Dtk_feat_scaling
~Dtk_feat_scaling()
Destructor of a Scaling feature.
Dtk_feat_pattern::angle
double angle
Definition: str_feat_dtk.hpp:3290
Dtk_feat_loft::isComputedSpine
Bool isComputedSpine
Definition: str_feat_dtk.hpp:5539
Dtk_feat_sew_surf
Generic Sew Surface.
Definition: str_feat_dtk.hpp:2898
Dtk_feat_hole::Sunk_diameter
Dtk_Double64 Sunk_diameter
Definition: str_feat_dtk.hpp:1607
Dtk_feat_face_fillet::~Dtk_feat_face_fillet
~Dtk_feat_face_fillet()
Dtk_feat::dtk_feat_type::symmetry
Dtk_feat_symmetry * symmetry
Definition: str_feat_dtk.hpp:6933
Cartesian_point
struct cartesian_point_def Cartesian_point
Definition: str_feat_dtk.hpp:16
DTK_THREAD_UP_TO_PLANE
@ DTK_THREAD_UP_TO_PLANE
Definition: str_feat_dtk.hpp:289
Dtk_feat_draft_advanced::get_second_side
int get_second_side(Dtk_feat_draft_side **)
Returns the advanced draft second side (one or two sides may be presented in an advanced draft)
DTK_FEAT_REMOVE_LUMP
@ DTK_FEAT_REMOVE_LUMP
Definition: str_feat_dtk.hpp:332
Dtk_feat::dtk_feat_type::thickness_feat
Dtk_feat_thickness_feat * thickness_feat
Definition: str_feat_dtk.hpp:6902
Dtk_feat_revol::thickness
Dtk_feat_thickness * thickness
Definition: str_feat_dtk.hpp:1004
Dtk_Entity::DtkDynamicType
int DtkDynamicType(const int &inId)
Dtk_feat_udf::get_dtk_feat_udf_xmldefinition
void get_dtk_feat_udf_xmldefinition(Dtk_string &out)
Gets the xml definition.
DTK_FEAT_TTR_THREAD
@ DTK_FEAT_TTR_THREAD
Definition: str_feat_dtk.hpp:376
Dtk_feat_node::name
Dtk_string name
Definition: str_feat_dtk.hpp:7506
DTK_FEAT_THICKNESS
@ DTK_FEAT_THICKNESS
Definition: str_feat_dtk.hpp:344
Dtk_feat::GetMirror
Dtk_feat_mirror * GetMirror() const
Definition: str_feat_dtk.hpp:7237
Dtk_feat_user_pattern::gener_tool
bool gener_tool
Definition: str_feat_dtk.hpp:3523
Dtk_feat_circ_pattern::get_circle_spacing
int get_circle_spacing(double *)
Returns the distance between two consecutive circles of the crown created.
Dtk_feat_SpotPoint::setProcessCategory
void setProcessCategory(Dtk_string const &p_category)
Set SpotPoint category.
V_BOTTOM
@ V_BOTTOM
Definition: str_feat_dtk.hpp:100
Dtk_feat_translate_point::get_end_point
int get_end_point(Dtk_pnt *)
Returns the end point of the translate feature.
VAR_ANGLE
@ VAR_ANGLE
Definition: str_feat_dtk.hpp:164
Dtk_feat_pattern::keep_spec
Bool keep_spec
Definition: str_feat_dtk.hpp:3296
Dtk_feat_user_defined::vals
Dtk_tab< Dtk_feat_user_defined_value > vals
Definition: str_feat_dtk.hpp:6163
Dtk_feat::Transform
Dtk_ErrorStatus Transform(const Dtk_transfo &inTransfo)
Dtk_feat_fillet::type
FILLET_TYPE type
Definition: str_feat_dtk.hpp:2440
Dtk_feat_translate_point::end_point
Dtk_pnt end_point
Definition: str_feat_dtk.hpp:3934
Dtk_feat_blend_vertex::get_set_back_distance
int get_set_back_distance(double *)
Returns back distance of blend vertex
Dtk_feat_translate::dtk_translate_type::trans_dir
Dtk_feat_translate_direction * trans_dir
Definition: str_feat_dtk.hpp:4071
Dtk_feat_stiffener::get_profile
int get_profile(Dtk_feat_geometry **)
Gets the profile of the stiffener feature
DTK_POINT_PLANE
@ DTK_POINT_PLANE
Definition: str_feat_dtk.hpp:80
Dtk_feat_draft::parting_elt
Dtk_feat_parting_element * parting_elt
Definition: str_feat_dtk.hpp:5030
Dtk_feat_revol::get_profiles
int get_profiles(Dtk_feat_geometry **)
Returns the profile internal component.
NO_FILLET_TYPE
@ NO_FILLET_TYPE
Definition: str_feat_dtk.hpp:93
Dtk_feat::dtk_feat_type::remove_face
Dtk_feat_remove_face * remove_face
Definition: str_feat_dtk.hpp:6914
DTK_FEAT_INTERSECT
@ DTK_FEAT_INTERSECT
Definition: str_feat_dtk.hpp:329
Dtk_feat_close_surf::surf
Dtk_feat_geometry * surf
Definition: str_feat_dtk.hpp:2917
FLAT
@ FLAT
Definition: str_feat_dtk.hpp:99
Dtk_feat_pattern::dtk_pattern_type::rect
Dtk_feat_rect_pattern * rect
Definition: str_feat_dtk.hpp:3280
Dtk_feat_draft_variable::get_var_points_nb
int get_var_points_nb(int *)
Returns number of draft points in a variable Draft
Dtk_feat_thread::support_depth
double support_depth
Definition: str_feat_dtk.hpp:1461
Dtk_feat_hole::hole_bottom_type
HOLE_BOTTOM_TYPE hole_bottom_type
Definition: str_feat_dtk.hpp:1604
Dtk_feat_hole::IsEndActived
Dtk_Int32 IsEndActived() const
test if end chamfer is activated
Definition: str_feat_dtk.hpp:1985
Dtk_feat_loft_coupling::couplingDisplay
Bool couplingDisplay
Definition: str_feat_dtk.hpp:5467
Dtk_feat_boolean
Definition: str_feat_dtk.hpp:4455
Dtk_feat_hole::axis
Dtk_feat_axis * axis
Definition: str_feat_dtk.hpp:1602
DTK_FEAT_SCALING
@ DTK_FEAT_SCALING
Definition: str_feat_dtk.hpp:345
DTK_FEAT_UDF
@ DTK_FEAT_UDF
Definition: str_feat_dtk.hpp:301
Dtk_feat_remove_face::get_removed_faces_nb
int get_removed_faces_nb(int *)
Returns the number of faces to remove of the Remove Face feature
Dtk_feat_rotate_points::second_point
Dtk_pnt second_point
Definition: str_feat_dtk.hpp:4221
Dtk_feat_rotate_axis::axis
Dtk_feat_axis * axis
Definition: str_feat_dtk.hpp:4168
Dtk_feat::dtk_feat_type::prism
Dtk_feat_prism * prism
Definition: str_feat_dtk.hpp:6907
Dtk_feat_rotate_axis_elements::first_element
Dtk_feat_geometry * first_element
Definition: str_feat_dtk.hpp:4286
Dtk_feat::dtk_feat_type::body
Dtk_feat_body * body
Definition: str_feat_dtk.hpp:6939
DTK_FEAT_SWEEP
@ DTK_FEAT_SWEEP
Definition: str_feat_dtk.hpp:309
Dtk_feat_user_defined_value
Definition: str_feat_dtk.hpp:6088
DTK_TYPE_FEATURE
@ DTK_TYPE_FEATURE
Definition: define.h:534
Dtk_feat_revol::second_angle
double second_angle
Definition: str_feat_dtk.hpp:1006
Dtk_feat_cst_edge_ribbon::get_radius
int get_radius(double *)
Returns constant edge ribbon radius
Dtk_feat_hole::HasCounterDiameterTolerance
Dtk_bool HasCounterDiameterTolerance() const
Definition: str_feat_dtk.hpp:1857
Dtk_feat_pattern::objects_to_pattern
Dtk_tab< Dtk_feat_geometry * > objects_to_pattern
Definition: str_feat_dtk.hpp:3285
Dtk_feat::isActive
bool isActive
Definition: str_feat_dtk.hpp:6889
DTK_FEAT_BEHAVIOR
DTK_FEAT_BEHAVIOR
Definition: str_feat_dtk.hpp:204
DTK_FEAT_TRITANGENT_FILLET
@ DTK_FEAT_TRITANGENT_FILLET
Definition: str_feat_dtk.hpp:340
Dtk_feat_thread::GetLimit
Dtk_feat_geometry * GetLimit() const
Definition: str_feat_dtk.hpp:1576
Dtk_feat_SpotPoint::robustness
Robustness robustness() const
Return SpotPoint regulation.
Dtk_feat_SpotPoint::Dtk_feat_SpotPoint
Dtk_feat_SpotPoint(const Dtk_pnt &p_location, const Dtk_dir &p_normal, double p_diameter, ProcessCategory p_category, ProcessType p_type, Robustness p_robustness, Regulation p_regulation, Finish p_finish)
Parameters Constructor.
Dtk_feat_limit::Dtk_feat_limit
Dtk_feat_limit(const Dtk_feat_limit &inFeatLimit)
Dtk_feat_user_defined_value::Dtk_feat_user_defined_value
Dtk_feat_user_defined_value(const Dtk_feat_user_defined_value &inValue)
Definition: str_feat_dtk.hpp:6106
Dtk_feat_translate::get_surface_translate
int get_surface_translate(Dtk_feat_surface_transfo **)
Returns the surface translate entity, the translate should be surface to be able to call this functio...
Dtk_feat_shell::get_outside_thickness
int get_outside_thickness(double *)
Get the outside thickness value of the feature Shell.
Dtk_feat_SpotPoint::setManufacturingCode
void setManufacturingCode(const Dtk_string &p_code)
Set SpotPoint manufacturing code.
DTK_FEAT_SHM_BEND_AUTOMATIC
@ DTK_FEAT_SHM_BEND_AUTOMATIC
Definition: str_feat_dtk.hpp:428
Dtk_feat_pipe::get_end_section
DtkErrorStatus get_end_section(Dtk_Pipe_Section *&outEndSection) const
Returns Pipe End Section
Dtk_feat_stiffener::get_isNeutralFiber
int get_isNeutralFiber(Bool *)
Gets the neutral fiber boolean option of the stiffener feature
NEUTRAL_ELEMENT
@ NEUTRAL_ELEMENT
Definition: str_feat_dtk.hpp:172
Dtk_feat_stiffener::Dtk_feat_stiffener
Dtk_feat_stiffener()
Constructor of Stiffener Feature
STIFFENER_MODE
STIFFENER_MODE
Definition: str_feat_dtk.hpp:228
Dtk_feat_SpotPoint::TIG_141
@ TIG_141
Definition: str_feat_dtk.hpp:6635
Dtk_feat_SpotPoint::Unspecified_Material
@ Unspecified_Material
Definition: str_feat_dtk.hpp:6657
Dtk_feat_chamfer_ribbon::get_objects
int get_objects(Dtk_feat_geometry ***)
Returns geometries objects fro each Ribbon
Dtk_feat_thickness::thickThin1
double thickThin1
Definition: str_feat_dtk.hpp:734
DTK_SWEEP_SLOT
@ DTK_SWEEP_SLOT
Definition: str_feat_dtk.hpp:65
Dtk_pipe_fiber_segment::splineCurve
Dtk_CurvePtr splineCurve
Definition: str_feat_dtk.hpp:6358
DTK_USER_DEFINED_IDGEOM
@ DTK_USER_DEFINED_IDGEOM
Definition: str_feat_dtk.hpp:6080
Dtk_feat_boolean::Dtk_feat_boolean
Dtk_feat_boolean()
DTK_FEAT_THICK_SURF
@ DTK_FEAT_THICK_SURF
Definition: str_feat_dtk.hpp:314
Dtk_feat_hole::GetSketch
Dtk_feat_geometry * GetSketch() const
Definition: str_feat_dtk.hpp:1701
Dtk_feat_chamfer_ribbon::~Dtk_feat_chamfer_ribbon
~Dtk_feat_chamfer_ribbon()
Dtk_feat_inner_thread
Feature Inner Thread.
Definition: str_feat_dtk.hpp:1249
Dtk_feat_hole::get_type
int get_type(HOLE_TYPE *)
Gets the hole type
Dtk_feat_pattern::get_active_instances
int get_active_instances(Bool **)
Returns the array of boolean values to determine an occurrence to be set active or inactive.
Dtk_feat_thread::face_limit
Dtk_feat_geometry * face_limit
Definition: str_feat_dtk.hpp:1455
Dtk_feat::GetTypeAsString
Dtk_string GetTypeAsString()
CHAMFER_TYPE
CHAMFER_TYPE
Definition: str_feat_dtk.hpp:115
Dtk_feat_loft::angularCorrection
double angularCorrection
Definition: str_feat_dtk.hpp:5536
Dtk_feat_thread::get_support_diameter_with_tol
int get_support_diameter_with_tol(double *, double *, double *)
Returns the thread support surface diameter with tolerance values if any.
Dtk_feat::get_translate
int get_translate(Dtk_feat_translate **e)
Returns feature's translate feature
PROPAGATION_TYPE
PROPAGATION_TYPE
Definition: str_feat_dtk.hpp:133
Dtk_feat::get_fillet
int get_fillet(Dtk_feat_fillet **e)
Returns feature's inner Fillet Feature
DTK_FEAT_SHM_LOUVER
@ DTK_FEAT_SHM_LOUVER
Definition: str_feat_dtk.hpp:447
Dtk_feat_thickness::get_neutral_fiber
int get_neutral_fiber(Bool *)
Returns neutral fiber flag.
Dtk_feat_pattern::gener_tool
bool gener_tool
Definition: str_feat_dtk.hpp:3298
DTK_BOOLEAN_INTERSECT
@ DTK_BOOLEAN_INTERSECT
Definition: str_feat_dtk.hpp:34
Dtk_pipe_fiber_segment::DTK_CENTER_LEFT
@ DTK_CENTER_LEFT
Definition: str_feat_dtk.hpp:6346
Dtk_feat_draft_advanced::second_side
Dtk_feat_draft_side * second_side
Definition: str_feat_dtk.hpp:4921
Dtk_feat_mirror
Definition: str_feat_dtk.hpp:3696
LENGTH_ANGLE
@ LENGTH_ANGLE
Definition: str_feat_dtk.hpp:117
NO_SELECTION_MODE
@ NO_SELECTION_MODE
Definition: str_feat_dtk.hpp:173
DTK_POINT_ON_EDGE
@ DTK_POINT_ON_EDGE
Definition: str_feat_dtk.hpp:79
Dtk_feat_thread::get_limit
int get_limit(Dtk_feat_geometry **)
Returns thread limit surface.
Dtk_feat_shell::removed_faces
Dtk_feat_shell_face ** removed_faces
Definition: str_feat_dtk.hpp:2108
DTK_FEAT_SHM_BRIDGE
@ DTK_FEAT_SHM_BRIDGE
Definition: str_feat_dtk.hpp:446
DTK_FEAT_SHM_STAMP_USER
@ DTK_FEAT_SHM_STAMP_USER
Definition: str_feat_dtk.hpp:444
Dtk_feat::dtk_feat_type::thick_surf
Dtk_feat_thick_surf * thick_surf
Definition: str_feat_dtk.hpp:6921
Dtk_feat_draft_variable::get_neutral_element
int get_neutral_element(Dtk_feat_draft_neutral_element **)
Returns the neutral elements.
Dtk_feat_replace_face::replacing_surface
Dtk_feat_geometry * replacing_surface
Definition: str_feat_dtk.hpp:3030
Dtk_feat_rotate::get_surface_rotate
int get_surface_rotate(Dtk_feat_surface_transfo **)
Returns the surface rotate entity, the rotate should be surface to be able to call this function
Dtk_feat_parting_element::both_sides
Bool both_sides
Definition: str_feat_dtk.hpp:4691
Dtk_feat_rotate::Dtk_feat_rotate
Dtk_feat_rotate()
Constructor of a generic rotate Feature
Dtk_feat_rotate::get_axis_angle_rotate
int get_axis_angle_rotate(Dtk_feat_rotate_axis **)
Returns Axis rotate entity
Dtk_feat_inner_thread::GetDepthTolerance
Dtk_feat_tolerance_set * GetDepthTolerance() const
Definition: str_feat_dtk.hpp:1339
Dtk_feat_chamfer
Chamfer feature.
Definition: str_feat_dtk.hpp:1155
Dtk_feat_pipe::_sectionType
DTK_PIPE_SECTION_TYPE _sectionType
Definition: str_feat_dtk.hpp:6490
Dtk_feat::dtk_feat_type::sew
Dtk_feat_sew_surf * sew
Definition: str_feat_dtk.hpp:6922
Dtk_pipe_fiber_segment::get_section_set_point
DtkErrorStatus get_section_set_point(SECTION_SET_POINT &outSectionSetPoint) const
Returns pipe section set point
Dtk_feat_prism::second_limit
Dtk_feat_limit * second_limit
Definition: str_feat_dtk.hpp:878
DTK_AXIS_ANGLE
@ DTK_AXIS_ANGLE
Definition: str_feat_dtk.hpp:222
Dtk_feat_pattern::get_row1
int get_row1(int *)
Returns the order of the base feature in the list of occurrences resulted of the pattern feature.
DTK_FEAT_DRAFT
@ DTK_FEAT_DRAFT
Definition: str_feat_dtk.hpp:334
Dtk_feat_thickness_feat::get_default_faces
int get_default_faces(Dtk_tab< Dtk_feat_geometry * > &)
Returns the array of default faces geometry of the feature Thickness
Dtk_feat_blend_vertex::Dtk_feat_blend_vertex
Dtk_feat_blend_vertex()
Dtk_feat::GetReplaceFace
Dtk_feat_replace_face * GetReplaceFace() const
Definition: str_feat_dtk.hpp:7347
Dtk_feat_revol::side
int side
Definition: str_feat_dtk.hpp:1007
Dtk_feat_thread
Feature Thread (taraudage)
Definition: str_feat_dtk.hpp:1451
Dtk_feat_rotate_points::get_third_point
int get_third_point(Dtk_pnt *)
Returns the third point of the rotation feature.
Dtk_feat_user_defined_value::~Dtk_feat_user_defined_value
~Dtk_feat_user_defined_value()
Dtk_feat_sweep::center_curve
Dtk_feat_geometry * center_curve
Definition: str_feat_dtk.hpp:2690
Dtk_feat_translate::get_is_surface_translate
int get_is_surface_translate(bool *)
Returns the boolean value that indicates if the translate feature is a surface feature.
Dtk_feat_draft::get_draft_faces
int get_draft_faces(Dtk_feat_geometry ***)
Returns geometries of Draft faces in case of multi faces selection mode.
Dtk_feat_pattern::get_features
int get_features(Dtk_tab< Dtk_FeaturePtr > &)
Returns the array of features resulted of the pattern feature.
Dtk_feat_thread::direction_reversed
Bool direction_reversed
Definition: str_feat_dtk.hpp:1464
Dtk_FeaturePtr
Dtk_SmartPtr< Dtk_feat > Dtk_FeaturePtr
Definition: dtk_maindoc.hpp:22
NO_DRAFT_FORM
@ NO_DRAFT_FORM
Definition: str_feat_dtk.hpp:180
Dtk_pipe_fiber_segment::DTK_TOP_CENTER
@ DTK_TOP_CENTER
Definition: str_feat_dtk.hpp:6344
Dtk_feat_revol::get_start_angle
int get_start_angle(double *)
Returns the second angle value.
Dtk_feat_sweep::profiles
Dtk_feat_geometry ** profiles
Definition: str_feat_dtk.hpp:2688
Dtk_feat_sweep::sweep_type
DTK_SWEEP_TYPE sweep_type
Definition: str_feat_dtk.hpp:2700
Dtk_counter_params
double Dtk_counter_params[3]
Definition: str_feat_dtk.hpp:854
Dtk_feat_SpotPoint::Robot_Sealed
@ Robot_Sealed
Definition: str_feat_dtk.hpp:6646
Dtk_feat_user_pattern
Definition: str_feat_dtk.hpp:3512
Dtk_feat::type
DTK_FEATURE_TYPE type
Definition: str_feat_dtk.hpp:6880
LIMITED
@ LIMITED
Definition: str_feat_dtk.hpp:101
Dtk_feat_SpotPoint::PLW
@ PLW
Definition: str_feat_dtk.hpp:6639
Dtk_feat_loft_guide::~Dtk_feat_loft_guide
~Dtk_feat_loft_guide()
Dtk_feat_hole::anchor
Dtk_pnt anchor
Definition: str_feat_dtk.hpp:1617
Dtk_feat::GetUdf
Dtk_feat_udf * GetUdf() const
Definition: str_feat_dtk.hpp:7095
PROFILE_CONTROL_TYPE
PROFILE_CONTROL_TYPE
Definition: str_feat_dtk.hpp:139
Dtk_feat_user_defined_value::get_value_type
int get_value_type(DTK_USER_DEFINED_VAL_TYPE &outType)
Get the User Defined Value type (Double, Length, Angle, Int, GeomID, NoValue, etc....
Dtk_feat_prism::type
DTK_PRISM_TYPE type
Definition: str_feat_dtk.hpp:870
Dtk_feat_inner_thread::thread_definition_type
Dtk_string thread_definition_type
Definition: str_feat_dtk.hpp:1252
Dtk_feat_user_pattern::Dtk_feat_user_pattern
Dtk_feat_user_pattern()
Dtk_feat_mirror::reference
Dtk_feat_geometry * reference
Definition: str_feat_dtk.hpp:3699
Dtk_feat_translate_point::~Dtk_feat_translate_point
~Dtk_feat_translate_point()
Destructor a point_to_point translate Feature
DTK_FEAT_SHEET_METAL
@ DTK_FEAT_SHEET_METAL
Definition: str_feat_dtk.hpp:361
DTK_PIPE_DUCT_RUN
@ DTK_PIPE_DUCT_RUN
Definition: str_feat_dtk.hpp:259
util_ent_dtk.hpp
Dtk_feat_inner_thread::get_thread_type
int get_thread_type(DTK_THREAD_TYPE &)
Returns the thread type value.
Dtk_feat_shell_face::~Dtk_feat_shell_face
~Dtk_feat_shell_face()
Destructor of a shell face feature.
Dtk_feat_body::get_inner_feat_nb
int get_inner_feat_nb(long *)
Gets the number of direct inner features
Dtk_feat_inner_thread::GetLimitTypeAsString
Dtk_string GetLimitTypeAsString() const
Dtk_feat_shell::get_skins
int get_skins(Dtk_feat_shell_face ***)
Get the skins of the feature Shell.
Dtk_feat_surface_transfo::get_isSurfaceResult
int get_isSurfaceResult(bool *)
Returns whether to hide or to show the initial element to transform.
Dtk_pipe_fiber_segment::DTK_BOTTOM_LEFT
@ DTK_BOTTOM_LEFT
Definition: str_feat_dtk.hpp:6349
Dtk_feat_loft_coupling::Dtk_feat_loft_coupling
Dtk_feat_loft_coupling()
Dtk_feat_thread::~Dtk_feat_thread
~Dtk_feat_thread()
Desstructor of Thread Feature
Dtk_feat_remove_face::faces_to_remove
Dtk_tab< Dtk_feat_geometry * > faces_to_remove
Definition: str_feat_dtk.hpp:2953
Dtk_feat_rotate_axis_elements::axis
Dtk_feat_axis * axis
Definition: str_feat_dtk.hpp:4285
DTK_FEAT_REMOVE
@ DTK_FEAT_REMOVE
Definition: str_feat_dtk.hpp:328
Dtk_feat_translate::dtk_translate_type::trans_pnt
Dtk_feat_translate_point * trans_pnt
Definition: str_feat_dtk.hpp:4072
NO_DTK_LOFT_TYPE
@ NO_DTK_LOFT_TYPE
Definition: str_feat_dtk.hpp:53
DTK_FEAT_SHM_CHAMFER
@ DTK_FEAT_SHM_CHAMFER
Definition: str_feat_dtk.hpp:456
Dtk_feat_split_surf::get_side
int get_side(Bool *)
Returns the side indicating the portion of the body to be kept.
Dtk_Int32
int32_t Dtk_Int32
Definition: define.h:679
Dtk_feat_face_fillet::get_spine
int get_spine(Dtk_feat_geometry **)
Returns Face Fillet spine
Dtk_feat::get_revol
int get_revol(Dtk_feat_revol **e)
Returns feature's inner Revol Feature (SHAFT|GROOVE)
Dtk_feat_thickness::thick
Bool thick
Definition: str_feat_dtk.hpp:736
Dtk_feat_edge_ribbon::nb_elts
int nb_elts
Definition: str_feat_dtk.hpp:2329
Dtk_feat_draft_var_point
Draft point.
Definition: str_feat_dtk.hpp:4621
Dtk_feat_circ_pattern
Definition: str_feat_dtk.hpp:3203
DTK_ADD_MATERIAL
@ DTK_ADD_MATERIAL
Definition: str_feat_dtk.hpp:206
Dtk_feat_sew_surf::Dtk_feat_sew_surf
Dtk_feat_sew_surf()
Dtk_feat_pipe
Definition: str_feat_dtk.hpp:6479
Dtk_feat_thread::get_support
int get_support(Dtk_feat_geometry **)
Returns the thread support surface.
Dtk_feat_draft_var_point::ratio
double ratio
Definition: str_feat_dtk.hpp:4628
Dtk_feat_loft_coupling::get_coupling_display
int get_coupling_display(Bool *)
Returns loft coupling display boolean value.
DTK_PIPE_RACEWAY_RUN
@ DTK_PIPE_RACEWAY_RUN
Definition: str_feat_dtk.hpp:257
Dtk_feat_edge_ribbon
Feature Edge Ribbon.
Definition: str_feat_dtk.hpp:2312
Dtk_feat_hole::anchor_type
ANCHOR_TYPE anchor_type
Definition: str_feat_dtk.hpp:1609
DTK_BODY_SELECT
@ DTK_BODY_SELECT
Definition: str_feat_dtk.hpp:156
Dtk_feat_loft::loftCoupling
Dtk_feat_loft_coupling * loftCoupling
Definition: str_feat_dtk.hpp:5534
Dtk_feat_pipe::get_start_point
DtkErrorStatus get_start_point(Dtk_pnt &outStartPoint) const
Returns Pipe start Point
DTK_FEAT_SHM_PATTERN_RECT
@ DTK_FEAT_SHM_PATTERN_RECT
Definition: str_feat_dtk.hpp:450
Dtk_feat_draft_advanced::get_driving_mode
int get_driving_mode(DRIVING_MODE *)
Returns advanced Draft Driving Mode
Dtk_feat_SpotPoint::Critical
@ Critical
Definition: str_feat_dtk.hpp:6663
Dtk_feat_remove_face::get_kept_faces_nb
int get_kept_faces_nb(int *)
Returns the number of faces to keep of the Remove Face feature
Dtk_feat_prism::nb_anchors
int nb_anchors
Definition: str_feat_dtk.hpp:880
Dtk_feat_inner_thread::GetPitchTolerance
Dtk_feat_tolerance_set * GetPitchTolerance() const
Definition: str_feat_dtk.hpp:1368
Dtk_feat_pattern::get_keep_spec
int get_keep_spec(Bool *)
Returns the design intent of the pattern (keeping specifications).
Dtk_feat_boolean::get_type
int get_type(DTK_BOOLEAN_TYPE *)
Returns boolean operation type
Dtk_feat_loft::spine
Dtk_feat_geometry * spine
Definition: str_feat_dtk.hpp:5535
NO_HOLE_BOTTOM_TYPE
@ NO_HOLE_BOTTOM_TYPE
Definition: str_feat_dtk.hpp:102
DTK_FEATURE_TYPE
DTK_FEATURE_TYPE
Feature types
Definition: str_feat_dtk.hpp:295
DTK_COMPLEX_FEATURE
@ DTK_COMPLEX_FEATURE
Definition: str_feat_dtk.hpp:198
Dtk_feat_thread::GetInnerThread
Dtk_feat_inner_thread * GetInnerThread() const
Definition: str_feat_dtk.hpp:1495
Dtk_feat_SpotPoint::processType
ProcessType processType() const
Return SpotPoint type.
Dtk_feat_shell::Dtk_feat_shell
Dtk_feat_shell()
Constructor of Shell Feature
Dtk_pipe_fiber_segment::DTK_CENTER_RIGHT
@ DTK_CENTER_RIGHT
Definition: str_feat_dtk.hpp:6348
Dtk_feat_scaling::get_ratio
int get_ratio(double *)
Gets the ratio of the scaling feature
Dtk_feat_pattern::dtk_pattern_type::circ
Dtk_feat_circ_pattern * circ
Definition: str_feat_dtk.hpp:3281
Dtk_feat_loft::get_coupling
int get_coupling(Dtk_feat_loft_coupling **)
Returns loft coupling entity
Dtk_feat_var_edge_ribbon::nb_points
int nb_points
Definition: str_feat_dtk.hpp:2279
Dtk_feat_translate_coordinates
Definition: str_feat_dtk.hpp:3983
Dtk_feat_user_defined_value::type
DTK_USER_DEFINED_VAL_TYPE type
Definition: str_feat_dtk.hpp:6096
DTK_FEAT_COMP_ZONES_GROUP
@ DTK_FEAT_COMP_ZONES_GROUP
Definition: str_feat_dtk.hpp:398
Dtk_feat_pattern::get_simple_rep
int get_simple_rep(Bool *)
Returns a boolean value indicating whether some inactive occurrences are set.
Dtk_feat_axis::GetOrigin
Dtk_pnt GetOrigin() const
Definition: str_feat_dtk.hpp:580
Dtk_feat_pattern_dir::reverse
Bool reverse
Definition: str_feat_dtk.hpp:3090
Dtk_feat_loft_coupling::get_coupling_points_nb
int get_coupling_points_nb(int *)
Returns number of loft coupling points
Dtk_feat_thread::IsReversed
Dtk_bool IsReversed() const
Definition: str_feat_dtk.hpp:1586
Dtk_thread_params
double Dtk_thread_params[3]
Definition: str_feat_dtk.hpp:857
Dtk_feat_prism::get_inner_side
int get_inner_side(int *)
Returns the closing side of the open profile (side flag).
Dtk_feat_sheet_metal::unFold_output_geometry
Dtk_feat_geometry * unFold_output_geometry
Definition: str_feat_dtk.hpp:6261
Dtk_feat_rect_pattern::~Dtk_feat_rect_pattern
~Dtk_feat_rect_pattern()
Dtk_feat_prism::get_sym
int get_sym(Bool *)
Tests whether the symmetrical extension is set or not.
Dtk_feat_draft_reflect_line
Feature Reflect Line Draft.
Definition: str_feat_dtk.hpp:4879
Dtk_feat_fillet::corners
Dtk_feat_blend_vertex ** corners
Definition: str_feat_dtk.hpp:2434
Dtk_feat_SpotPoint::setMaterial
void setMaterial(Dtk_string const &p_material)
Set SpotPoint material.
Dtk_feat_hole::hole_params
Dtk_hole_params hole_params
Definition: str_feat_dtk.hpp:1600
Dtk_feat::GetOutputGeometry
Dtk_feat_geometry * GetOutputGeometry() const
Definition: str_feat_dtk.hpp:7049
Dtk_feat_split_surf::~Dtk_feat_split_surf
~Dtk_feat_split_surf()
Dtk_feat_limit::GetTypeAsString
Dtk_string GetTypeAsString() const
DTK_PRISM_PAD
@ DTK_PRISM_PAD
Definition: str_feat_dtk.hpp:43
Dtk_pipe_fiber_segment::_turnRadius
double _turnRadius
Definition: str_feat_dtk.hpp:6360
Dtk_feat_loft_guide::get_guide_dimension
int get_guide_dimension(int *)
Returns loft guide dimension // 2 or 3.
Dtk_feat_fillet_point::construct_geom
long construct_geom
Definition: str_feat_dtk.hpp:2224
DTK_FEAT_COMP_ZONE
@ DTK_FEAT_COMP_ZONE
Definition: str_feat_dtk.hpp:400
Dtk_feat_sweep::~Dtk_feat_sweep
~Dtk_feat_sweep()
Dtk_feat_hole::get_counter_angle_with_tol
int get_counter_angle_with_tol(double *, double *, double *)
Gets the hole counter angle with its tolerance value (inf value & sup value)
Dtk_feat::get_hole
int get_hole(Dtk_feat_hole **e)
Returns feature's inner Hole Feature
Dtk_Pipe_Section::~Dtk_Pipe_Section
~Dtk_Pipe_Section()
Destructor of of Pipe Section.
Dtk_feat_SpotPoint::diameter
double diameter() const
Return SpotPoint diameter.
Dtk_feat_surf_feature::Dtk_feat_surf_feature
Dtk_feat_surf_feature()
Constructor of a Surface Feature generic feature
Dtk_feat_draft_variable
Generic Feature Standard Variable Draft.
Definition: str_feat_dtk.hpp:4804
Dtk_feat_SpotPoint::Dtk_feat_SpotPoint
Dtk_feat_SpotPoint()
Default Constructor.
DTK_FEAT_SHM_STAMP_CURVE
@ DTK_FEAT_SHM_STAMP_CURVE
Definition: str_feat_dtk.hpp:442
Dtk_feat_pipe::get_is_closed
DtkErrorStatus get_is_closed(Dtk_bool &outIsClosed) const
Returns Pipe is closed boolean
Dtk_pipe_fiber_segment::get_center_point
DtkErrorStatus get_center_point(Dtk_pnt &centerPointOut) const
Returns fiber Center Point
Dtk_feat_inner_thread::SetAsDeprecated
SetAsDeprecated("2024.2", "Use GetDefinitionType()") int get_def_type(wchar_t **)
Returns the thread standard definition type if any.
Dtk_feat_sweep::get_profiles
int get_profiles(Dtk_feat_geometry ***)
Get the profiles geometry of the feature Sweep.
DTK_FEAT_COMP_TRANS_ZONES_GROUP
@ DTK_FEAT_COMP_TRANS_ZONES_GROUP
Definition: str_feat_dtk.hpp:399
Dtk_feat_stiffener::get_mode
int get_mode(STIFFENER_MODE *)
Gets the mode of the stiffener feature
Dtk_feat_inner_thread::get_diameter
int get_diameter(double *)
Returns the thread diameter.
Dtk_feat::DtkDynamicType
Dtk_Int32 DtkDynamicType(const Dtk_Int32 &inId)
Retrieves the dynamic entity type.
Definition: str_feat_dtk.hpp:6977
Dtk_feat_SpotPoint::Safety
@ Safety
Definition: str_feat_dtk.hpp:6664
Dtk_feat::GetTriTangentFillet
Dtk_feat_tritangent_fillet * GetTriTangentFillet() const
Definition: str_feat_dtk.hpp:7153
Dtk_feat_pipe::get_neutral_fiber_set
Dtk_ErrorStatus get_neutral_fiber_set(Dtk_tab< Dtk_pipe_fiber_segment * > &outNeutralFiberSet) const
Get the set of the current segments of the neutral fiber.
Dtk_feat_thread::GetSupportDiameter
Dtk_Double64 GetSupportDiameter() const
Definition: str_feat_dtk.hpp:1546
Dtk_feat_thick_surf::sens_offset
Bool sens_offset
Definition: str_feat_dtk.hpp:2847
REFLECT_LINE
@ REFLECT_LINE
Definition: str_feat_dtk.hpp:165
Dtk_feat_fillet_point::Dtk_feat_fillet_point
Dtk_feat_fillet_point()
Dtk_feat_fillet::nb_corners
int nb_corners
Definition: str_feat_dtk.hpp:2438
Dtk_ErrorStatus
Dtk_ErrorStatus
Definition: error_dtk.hpp:6
Dtk_feat::GetStiffener
Dtk_feat_stiffener * GetStiffener() const
Definition: str_feat_dtk.hpp:7398
Dtk_feat_shell::skins
Dtk_feat_shell_face ** skins
Definition: str_feat_dtk.hpp:2107
Dtk_feat_hole::GetReliefAngle
Dtk_Double64 GetReliefAngle() const
return the angle of the relief
Definition: str_feat_dtk.hpp:1949
Dtk_feat::get_isActive
int get_isActive(bool *)
Returns inner feature's activation status
Dtk_feat_draft::get_limiting_elements
int get_limiting_elements(Dtk_feat_geometry ***)
Returns profiles of limiting elements list.
ANCHOR_TYPE
ANCHOR_TYPE
Definition: str_feat_dtk.hpp:120
Dtk_feat_loft_section::closingPoint
Dtk_feat_geometry * closingPoint
Definition: str_feat_dtk.hpp:5386
DTK_BOOLEAN_UNION_TRIM
@ DTK_BOOLEAN_UNION_TRIM
Definition: str_feat_dtk.hpp:36
Dtk_feat_thickness_feat::get_nb_default_faces
int get_nb_default_faces(int *)
Get the number of thickened faces of the feature Thickness.
Dtk_feat_loft_coupling::~Dtk_feat_loft_coupling
~Dtk_feat_loft_coupling()
Dtk_feat_thread::get_support_depth_with_tol
int get_support_depth_with_tol(double *, double *, double *)
Returns the thread support surface depth with tolerance values if any.
Dtk_feat_hole::GetEndDiameter
Dtk_Double64 GetEndDiameter() const
return the diameter of the end chamfer
Definition: str_feat_dtk.hpp:1995
Dtk_feat_draft::get_parting_element
int get_parting_element(Dtk_feat_parting_element **)
Returns Parting element.
SetAsDeprecated
#define SetAsDeprecated(inFromVersion, inMessage)
Definition: define.h:755
Dtk_feat_hole::get_diameter_has_tol
int get_diameter_has_tol(Bool *)
Tests whether there is a tolerance set on diameter.
Dtk_feat_loft::relimited_start_section
Bool relimited_start_section
Definition: str_feat_dtk.hpp:5540
Dtk_feat_pipe::_EndSection
Dtk_Pipe_Section * _EndSection
Definition: str_feat_dtk.hpp:6485
DTK_FEAT_SEW_SURF
@ DTK_FEAT_SEW_SURF
Definition: str_feat_dtk.hpp:315
Dtk_feat_shell_face::face
Dtk_feat_geometry * face
Definition: str_feat_dtk.hpp:785
Dtk_feat::GetUserDefined
Dtk_feat_user_defined * GetUserDefined() const
Definition: str_feat_dtk.hpp:7474
Dtk_feat::GetShell
Dtk_feat_shell * GetShell() const
Definition: str_feat_dtk.hpp:7118
Dtk_feat_rotate::dtk_rotate_type::rotate_axis
Dtk_feat_rotate_axis * rotate_axis
Definition: str_feat_dtk.hpp:4359
Dtk_feat_udf::~Dtk_feat_udf
~Dtk_feat_udf()
Destructor of a Dtk_feat_udf
Dtk_feat_pattern::get_type
int get_type(DTK_PATTERN_TYPE *)
Returns pattern type
Dtk_feat_SpotPoint::normal
Dtk_dir normal() const
Return SpotPoint normal.
VAR_RADIUS
@ VAR_RADIUS
Definition: str_feat_dtk.hpp:90
Dtk_feat::get_body
int get_body(Dtk_feat_body **e)
Returns feature's body
Dtk_feat_draft_side::direction
Dtk_feat_axis * direction
Definition: str_feat_dtk.hpp:4574
DTK_SECTION_FLAT_OVAL
@ DTK_SECTION_FLAT_OVAL
Definition: str_feat_dtk.hpp:275
Dtk_feat_loft::get_spine
int get_spine(Dtk_feat_geometry **)
Returns loft spine geometry
Dtk_feat_hole::GetCounterDepth
Dtk_Double64 GetCounterDepth() const
Definition: str_feat_dtk.hpp:1868
Dtk_feat_draft_neutral_element::profiles
Dtk_feat_geometry ** profiles
Definition: str_feat_dtk.hpp:4520
Dtk_feat_rotate_axis_elements::get_second_element
int get_second_element(Dtk_feat_geometry **)
Returns the second element of the rotate feature.
Dtk_feat_axis::get_origin
int get_origin(Dtk_pnt *)
Returns origin.
Dtk_feat_prism::get_axis
int get_axis(Dtk_feat_axis **)
Returns the extrusion direction.
Dtk_feat_circ_pattern::Dtk_feat_circ_pattern
Dtk_feat_circ_pattern()
DTK_SWEEP_RIB
@ DTK_SWEEP_RIB
Definition: str_feat_dtk.hpp:64
DRIVING_DRIVEN
@ DRIVING_DRIVEN
Definition: str_feat_dtk.hpp:185
Dtk_SmartPtr< Dtk_NodeConnector >
Dtk_feat_hole::GetBottomAngleTolerance
Dtk_feat_tolerance_set * GetBottomAngleTolerance() const
Definition: str_feat_dtk.hpp:1805
ADVANCED_DRAFT
@ ADVANCED_DRAFT
Definition: str_feat_dtk.hpp:166
Dtk_feat_rotate::~Dtk_feat_rotate
~Dtk_feat_rotate()
Destructor a generic rotate Feature
Dtk_feat_hole::start_active
Dtk_Int32 start_active
Definition: str_feat_dtk.hpp:1619
Dtk_feat_translate::dtk_translate_type::trans_coord
Dtk_feat_translate_coordinates * trans_coord
Definition: str_feat_dtk.hpp:4073
Dtk_Pipe_Section::profileSet
Dtk_tab< Dtk_CurvePtr > profileSet
Definition: str_feat_dtk.hpp:6433
Dtk_feat_rotate_points::get_second_point
int get_second_point(Dtk_pnt *)
Returns the second point of the rotation feature.
Dtk_feat_cst_edge_ribbon::Dtk_feat_cst_edge_ribbon
Dtk_feat_cst_edge_ribbon()
Dtk_feat_SpotPoint::Norm_B
@ Norm_B
Definition: str_feat_dtk.hpp:6672
Dtk_feat::GetCloseSurface
Dtk_feat_close_surf * GetCloseSurface() const
Definition: str_feat_dtk.hpp:7311
Dtk_feat_user_pattern::~Dtk_feat_user_pattern
~Dtk_feat_user_pattern()
Dtk_feat_node::get_feature
int get_feature(Dtk_FeaturePtr &)
Returns the feature , valid if the node is feature type
Dtk_feat_loft::get_isComputedSpine
int get_isComputedSpine(Bool *)
Returns boolean value whether the spine is automatically computed
Dtk_feat_translate_coordinates::~Dtk_feat_translate_coordinates
~Dtk_feat_translate_coordinates()
Destructor a coordinates translate Feature
dtk_maindoc.hpp
Dtk_feat::GetFillet
Dtk_feat_fillet * GetFillet() const
Definition: str_feat_dtk.hpp:7129
DTK_PATTERN_TYPE
DTK_PATTERN_TYPE
Definition: str_feat_dtk.hpp:146
Dtk_feat_var_edge_ribbon::points
Dtk_feat_fillet_point ** points
Definition: str_feat_dtk.hpp:2278
Dtk_feat_fillet::limiting_list
Dtk_feat_geometry ** limiting_list
Definition: str_feat_dtk.hpp:2435
Dtk_feat_hole::GetTypeAsString
Dtk_string GetTypeAsString() const
DTK_REVOL_SHAFT
@ DTK_REVOL_SHAFT
Definition: str_feat_dtk.hpp:58
Dtk_feat_draft::limiting_elements
Dtk_feat_geometry ** limiting_elements
Definition: str_feat_dtk.hpp:5031
DTK_FEAT_TTR_HOLE
@ DTK_FEAT_TTR_HOLE
Definition: str_feat_dtk.hpp:373
Dtk_feat_hole::IsReliefActived
Dtk_Int32 IsReliefActived() const
test if relief is activated , only relief or neck can be activated not both
Definition: str_feat_dtk.hpp:1944
Dtk_feat_sketch::~Dtk_feat_sketch
~Dtk_feat_sketch()
CreateFeatNodeConnectorFromGeomIDs
int CreateFeatNodeConnectorFromGeomIDs(const Dtk_tab< Dtk_ID > &inListOfGeomIDs, Dtk_NodeConnectorPtr &outNodeConnector)
Dtk_feat_fillet::trim_ribbon_mode
Bool trim_ribbon_mode
Definition: str_feat_dtk.hpp:2439
Dtk_feat_node::get_isTreated
int get_isTreated(Bool *)
Returns the value indicating whether the node is treated or not
Dtk_feat_scaling
Generic Feature Scaling.
Definition: str_feat_dtk.hpp:5320
Dtk_feat_split_surf::get_split_element
int get_split_element(Dtk_feat_geometry **)
Returns the splitting surface element of the feature
Dtk_feat_user_pattern::object_to_pattern
Dtk_feat_geometry * object_to_pattern
Definition: str_feat_dtk.hpp:3514
Dtk_pipe_fiber_segment::centerPoint
Dtk_pnt centerPoint
Definition: str_feat_dtk.hpp:6356
DTK_POINT_INTERSECTION
@ DTK_POINT_INTERSECTION
Definition: str_feat_dtk.hpp:81
Dtk_feat_translate_coordinates::X
double X
Definition: str_feat_dtk.hpp:3985
Dtk_feat_SpotPoint::Class_B
@ Class_B
Definition: str_feat_dtk.hpp:6680
Dtk_feat_fillet_point::get_point
int get_point(Dtk_pnt *)
Returns fillet point
DTK_FEAT_MULTI_PRISM
@ DTK_FEAT_MULTI_PRISM
Definition: str_feat_dtk.hpp:365
Dtk_feat::dtk_feat_type::split
Dtk_feat_split_surf * split
Definition: str_feat_dtk.hpp:6920
DTK_FEAT_CLOSE_SURF
@ DTK_FEAT_CLOSE_SURF
Definition: str_feat_dtk.hpp:316
DTK_FEAT_PRISM
@ DTK_FEAT_PRISM
Definition: str_feat_dtk.hpp:307
Dtk_feat_parting_element::isEqualNeutral
Bool isEqualNeutral
Definition: str_feat_dtk.hpp:4692
Dtk_feat_parting_element::get_isEqualNeutral
int get_isEqualNeutral(Bool *)
Returns a bool variable indicating whether the parting element is equal the neutral element or not
DTK_REVOL_TYPE
DTK_REVOL_TYPE
Definition: str_feat_dtk.hpp:57
Dtk_feat_limit::type
LIMIT_TYPE type
Definition: str_feat_dtk.hpp:633
Dtk_feat_shell::get_inside_thickness
int get_inside_thickness(double *)
Get the inner thickness value of the feature Shell.
Dtk_feat_remove_face
Generic Remove Face.
Definition: str_feat_dtk.hpp:2949
SIMPLE
@ SIMPLE
Definition: str_feat_dtk.hpp:106
Dtk_feat_thread::support_diameter
double support_diameter
Definition: str_feat_dtk.hpp:1459
DTK_FEAT_SHM_CORNER
@ DTK_FEAT_SHM_CORNER
Definition: str_feat_dtk.hpp:457
Dtk_feat_rect_pattern::get_second_dir
int get_second_dir(Dtk_feat_pattern_dir **)
Returns the second direction definition of the specified rectangular pattern feature.
DTK_FEAT_COMP_MATERIAL_TYPE
@ DTK_FEAT_COMP_MATERIAL_TYPE
Definition: str_feat_dtk.hpp:393
Dtk_feat_face_fillet::get_hold_curve
int get_hold_curve(Dtk_feat_geometry **)
Returns Face Fillet hold curve
DTK_FEAT_POCKET
@ DTK_FEAT_POCKET
Definition: str_feat_dtk.hpp:298
Dtk_feat_pipe::_Diameter
double _Diameter
Definition: str_feat_dtk.hpp:6493
DTK_NO_ROTATE_TYPE
@ DTK_NO_ROTATE_TYPE
Definition: str_feat_dtk.hpp:225
Dtk_feat_multi_prism::normal_to_surface
Bool normal_to_surface
Definition: str_feat_dtk.hpp:5893
Dtk_feat_hole::get_counter_diameter_with_tol
int get_counter_diameter_with_tol(double *, double *, double *)
Gets the hole counter diameter with its tolerance value (inf value & sup value)
Dtk_feat_sketch::vdir
Dtk_dir vdir
Definition: str_feat_dtk.hpp:602
Dtk_feat_axis::IsReversed
Dtk_bool IsReversed() const
Definition: str_feat_dtk.hpp:592
Dtk_feat_stiffener::mode
STIFFENER_MODE mode
Definition: str_feat_dtk.hpp:5210
Dtk_feat_hole::~Dtk_feat_hole
~Dtk_feat_hole()
Destructor of a hole feature
Dtk_feat_pipe::~Dtk_feat_pipe
~Dtk_feat_pipe()
Dtk_feat_hole::get_bottom_type
int get_bottom_type(HOLE_BOTTOM_TYPE *)
Gets the hole bottom type if any.
Dtk_feat::dtk_feat_type
Definition: str_feat_dtk.hpp:6891
DTK_FEAT_STIFFENER
@ DTK_FEAT_STIFFENER
Definition: str_feat_dtk.hpp:338
DTK_SURF_FEATURE_TYPE
DTK_SURF_FEATURE_TYPE
Surface Feature types
Definition: str_feat_dtk.hpp:410
Dtk_feat_sweep::Dtk_feat_sweep
Dtk_feat_sweep()
DTK_ROOT
@ DTK_ROOT
Definition: str_feat_dtk.hpp:197
Dtk_feat::get_shell
int get_shell(Dtk_feat_shell **e)
Returns feature's inner Shell Feature
Dtk_feat_translate_point::get_start_point
int get_start_point(Dtk_pnt *)
Returns the start point of the translate feature.
Dtk_feat_pattern_dir::direction
Dtk_feat_axis * direction
Definition: str_feat_dtk.hpp:3084
DTK_FEATURE_SELECT
@ DTK_FEATURE_SELECT
Definition: str_feat_dtk.hpp:155
DTK_POINT_UNPROCESSED_POINT_CONSTRUCTION
@ DTK_POINT_UNPROCESSED_POINT_CONSTRUCTION
Definition: str_feat_dtk.hpp:85
Dtk_feat_SpotPoint::setProcessType
void setProcessType(Dtk_string const &p_type)
Set SpotPoint type.
Dtk_feat_limit::reference_object
Dtk_feat_geometry * reference_object
Definition: str_feat_dtk.hpp:635
DTK_FEAT_BODY
@ DTK_FEAT_BODY
Definition: str_feat_dtk.hpp:353
Dtk_feat_hole::get_counter_diameter
int get_counter_diameter(double *)
Returns the hole counter diameter.
CST_ANGLE
@ CST_ANGLE
Definition: str_feat_dtk.hpp:163
Dtk_feat_hole::HasBottomAngleTolerance
Dtk_bool HasBottomAngleTolerance() const
Definition: str_feat_dtk.hpp:1815
Dtk_feat_pattern::get_nb_features
int get_nb_features(int *)
Returns the number of features resulted of the pattern feature.
Dtk_feat_user_defined
Definition: str_feat_dtk.hpp:6156
Dtk_feat_pattern::row1
int row1
Definition: str_feat_dtk.hpp:3292
Dtk_feat_replace_face::~Dtk_feat_replace_face
~Dtk_feat_replace_face()
Destructor of a Replace Face Feature.
Dtk_feat_translate_direction::get_direction
int get_direction(Dtk_feat_axis **)
Returns the direction of the translate feature.
Dtk_feat_revol::get_thickness
int get_thickness(Dtk_feat_thickness **)
Returns the thickness feature.
DTK_REMOVE_MATERIAL
@ DTK_REMOVE_MATERIAL
Definition: str_feat_dtk.hpp:207
Dtk_feat_hole::support
Dtk_feat_geometry * support
Definition: str_feat_dtk.hpp:1613
DTK_FEAT_SOLID_BODY
@ DTK_FEAT_SOLID_BODY
Definition: str_feat_dtk.hpp:354
Dtk_feat_SpotPoint::regulation
Regulation regulation() const
Return SpotPoint regulation.
Dtk_feat_hole_series::_Start
Dtk_FeaturePtr _Start
Definition: str_feat_dtk.hpp:2008
Dtk_feat_SpotPoint
Spot Point (the node in the tree structure storing joint element features)
Definition: str_feat_dtk.hpp:6621
DTK_FEAT_SHM_STAMP_POINT
@ DTK_FEAT_SHM_STAMP_POINT
Definition: str_feat_dtk.hpp:441
Dtk_feat_var_edge_ribbon::get_points
int get_points(Dtk_feat_fillet_point ***)
Returns variable edge ribbon set of points
Dtk_feat_SpotPoint::setProcessCategory
void setProcessCategory(ProcessCategory p_category)
Set SpotPoint category.
Dtk_feat::GetSpotPoint
Dtk_feat_SpotPoint * GetSpotPoint() const
Definition: str_feat_dtk.hpp:7485
Dtk_feat_body::get_type
int get_type(DTK_BODY_TYPE *)
Get the body type (Solid or Surface)
Dtk_feat_translate_coordinates::Z
double Z
Definition: str_feat_dtk.hpp:3987
Dtk_feat_prism_domain::Dtk_feat_prism_domain
Dtk_feat_prism_domain()
Dtk_feat_pattern::get_gener_tool
int get_gener_tool(bool *)
Returns the generated tool status indicating if generated features are to be gotten.
TAPERED
@ TAPERED
Definition: str_feat_dtk.hpp:107
Dtk_feat_face_fillet::spine
Dtk_feat_geometry * spine
Definition: str_feat_dtk.hpp:2544
Dtk_feat::GetRevol
Dtk_feat_revol * GetRevol() const
Definition: str_feat_dtk.hpp:7191
DTK_FEAT_SHM_EXTRUSION
@ DTK_FEAT_SHM_EXTRUSION
Definition: str_feat_dtk.hpp:426
Dtk_feat_draft_var_point::point
Dtk_pnt point
Definition: str_feat_dtk.hpp:4626
Dtk_feat_SpotPoint::finish
Finish finish() const
Return SpotPoint finish.
Dtk_feat_translate::Dtk_feat_translate
Dtk_feat_translate()
Constructor of a generic translate Feature
Dtk_feat_inner_thread::get_depth_has_tol
int get_depth_has_tol(Bool *)
Tests whether there is a tolerance set on thread depth.
NO_DRIVING_SIDE
@ NO_DRIVING_SIDE
Definition: str_feat_dtk.hpp:193
DTK_REVOL_GROOVE
@ DTK_REVOL_GROOVE
Definition: str_feat_dtk.hpp:59
Dtk_feat_replace_face::get_face_to_remove
int get_face_to_remove(Dtk_feat_geometry **)
Returns the face to remove of the replace face feature
Dtk_feat_draft_neutral_element::profiles_nb
int profiles_nb
Definition: str_feat_dtk.hpp:4522
HOLE_BOTTOM_TYPE
HOLE_BOTTOM_TYPE
Definition: str_feat_dtk.hpp:98
Dtk_feat_translate_direction::~Dtk_feat_translate_direction
~Dtk_feat_translate_direction()
Destructor a direction translate Feature
Dtk_feat_axis::~Dtk_feat_axis
~Dtk_feat_axis()
Dtk_feat_thickness::~Dtk_feat_thickness
~Dtk_feat_thickness()
DTK_THREAD_LIMIT_TYPE
DTK_THREAD_LIMIT_TYPE
Definition: str_feat_dtk.hpp:286
DTK_SHM_GENERATIVE_DESIGN
@ DTK_SHM_GENERATIVE_DESIGN
Definition: str_feat_dtk.hpp:238
Dtk_feat_fillet::get_nb_corners
int get_nb_corners(int *)
Returns Fillet corners number
Dtk_feat_translate_direction::direction
Dtk_feat_axis * direction
Definition: str_feat_dtk.hpp:3881
Dtk_feat_chamfer_ribbon::reverse
Bool reverse
Definition: str_feat_dtk.hpp:1114
Dtk_feat_user_defined_value::integerValue
int integerValue
Definition: str_feat_dtk.hpp:6095
Dtk_feat_thickness_feat::get_skins
int get_skins(Dtk_tab< Dtk_feat_thickness_face * > &)
Get the array of skins (thickness for each skin) of the feature Thickness.
Dtk_feat_sketch::Dtk_feat_sketch
Dtk_feat_sketch()
Dtk_feat::release
static Dtk_FeaturePtr release(Dtk_FeaturePtr inFeature)
Delete object.
Dtk_feat_face_fillet::get_radius
int get_radius(double *)
Returns Face Fillet radius
Dtk_feat_axis
Feature Axis.
Definition: str_feat_dtk.hpp:561
Dtk_feat_mirror::~Dtk_feat_mirror
~Dtk_feat_mirror()
Dtk_feat_symmetry::~Dtk_feat_symmetry
~Dtk_feat_symmetry()
Destructor of a Symmetry Feature.
Dtk_feat_rotate::dtk_rotate_type::rotate_axis_elements
Dtk_feat_rotate_axis_elements * rotate_axis_elements
Definition: str_feat_dtk.hpp:4361
Dtk_feat::GetDraft
Dtk_feat_draft * GetDraft() const
Definition: str_feat_dtk.hpp:7225
Dtk_pnt
This is a mathematical point class.
Definition: dtk_pnt.hpp:20
Dtk_feat_pipe::_isClosed
Dtk_bool _isClosed
Definition: str_feat_dtk.hpp:6496
DTK_BOOLEAN_ADD
@ DTK_BOOLEAN_ADD
Definition: str_feat_dtk.hpp:32
Dtk_feat_limit::get_val
int get_val(double *)
Returns limit length.
type_detk
type_detk
Definition: define.h:21
Dtk_feat_thickness_face::Dtk_feat_thickness_face
Dtk_feat_thickness_face()
Constructor of Thickness Face Feature
Dtk_feat_edge_ribbon::edge_ribbon_type
Definition: str_feat_dtk.hpp:2318
Dtk_feat_loft_coupling
Loft Coupling
Definition: str_feat_dtk.hpp:5461
Dtk_feat_fillet::get_objects_to_fillet
int get_objects_to_fillet(Dtk_feat_edge_ribbon ***)
Returns Fillet ribbon objects
Dtk_feat_axis::get_direction
int get_direction(Dtk_dir *)
Returns direction.
Dtk_feat::GetSheetMetal
Dtk_feat_sheet_metal * GetSheetMetal() const
Definition: str_feat_dtk.hpp:7424
Dtk_feat_SpotPoint::Dtk_feat_SpotPoint
Dtk_feat_SpotPoint(const Dtk_feat_SpotPoint &spot)
Copy Constructor.
Dtk_feat::get_replace_face
int get_replace_face(Dtk_feat_replace_face **e)
Returns feature's inner replace face feature
Dtk_feat_face_fillet::face2
Dtk_feat_geometry * face2
Definition: str_feat_dtk.hpp:2540
Dtk_feat_symmetry::reference
Dtk_feat_geometry * reference
Definition: str_feat_dtk.hpp:3835
Dtk_feat_thickness::get_thick
int get_thick(Bool *)
Returns thickness.
Dtk_feat_thread::get_inner_thread
int get_inner_thread(Dtk_feat_inner_thread **)
Returns the inner thread parameters.
Dtk_feat_replace_face::get_replacing_surface
int get_replacing_surface(Dtk_feat_geometry **)
Returns the replacing surface geometry of the Replace Face feature
Dtk_feat_node::isTreated
Bool isTreated
Definition: str_feat_dtk.hpp:7509
Dtk_feat_draft::get_advanced_draft
int get_advanced_draft(Dtk_feat_draft_advanced **)
Returns advanced draft entity
Dtk_feat_user_pattern::get_keep_spec
int get_keep_spec(Bool *)
Returns the design intent of the user pattern (keeping specifications).
DTK_NO_STIFFENER_MODE
@ DTK_NO_STIFFENER_MODE
Definition: str_feat_dtk.hpp:231
Dtk_feat::GetThread
Dtk_feat_thread * GetThread() const
Definition: str_feat_dtk.hpp:7106
DTK_FEAT_POSITIVE_LOFT
@ DTK_FEAT_POSITIVE_LOFT
Definition: str_feat_dtk.hpp:362
DTK_FEAT_SHM_FLANGED_HOLE
@ DTK_FEAT_SHM_FLANGED_HOLE
Definition: str_feat_dtk.hpp:469
Dtk_feat_thick_surf::get_first_offset
int get_first_offset(double *)
Returns the first offset of the thickness surface.
Dtk_feat_inner_thread::GetType
DTK_THREAD_TYPE GetType() const
Definition: str_feat_dtk.hpp:1421
Dtk_feat::get_type
int get_type(DTK_FEATURE_TYPE *)
Gets the feature type
Dtk_feat_hole_series::~Dtk_feat_hole_series
~Dtk_feat_hole_series()
Destructor of a hole feature
Dtk_feat_sweep::get_nb_profiles
int get_nb_profiles(int *)
Returns Sweep profiles number
Dtk_feat_pipe::get_type
Dtk_ErrorStatus get_type(DTK_PIPE_TYPE &outType) const
Returns pipe feature type
Dtk_feat_SpotPoint::setRobustness
void setRobustness(Dtk_string const &p_robustness)
Set SpotPoint robustness.
Dtk_feat_thread::tol_support_diameter
Dtk_feat_tolerance_set * tol_support_diameter
Definition: str_feat_dtk.hpp:1460
Dtk_feat_axis::reverse
Bool reverse
Definition: str_feat_dtk.hpp:566
Dtk_feat_hole::IsThreaded
Dtk_bool IsThreaded() const
Definition: str_feat_dtk.hpp:1689
Dtk_feat::dtk_feat_type::stiffener
Dtk_feat_stiffener * stiffener
Definition: str_feat_dtk.hpp:6931
Dtk_feat_revol
Revol Feature : A Revol extrudes a profile around an axis. The profile sketch must contain an axis us...
Definition: str_feat_dtk.hpp:999
Dtk_feat_SpotPoint::Glue1
@ Glue1
Definition: str_feat_dtk.hpp:6653
Dtk_feat::dtk_feat_type::scaling
Dtk_feat_scaling * scaling
Definition: str_feat_dtk.hpp:6932
Dtk_feat_limit::GetRefenceObject
Dtk_feat_geometry * GetRefenceObject() const
Definition: str_feat_dtk.hpp:669
Dtk_feat_edge_ribbon::edge_ribbon_type::var
Dtk_feat_var_edge_ribbon * var
Definition: str_feat_dtk.hpp:2320
Dtk_feat_tritangent_fillet::faceToRemove
Dtk_feat_geometry * faceToRemove
Definition: str_feat_dtk.hpp:2624
Dtk_feat_chamfer::get_nb_ribbons
int get_nb_ribbons(int *)
Returns Chamfer ribbons number
Dtk_feat_SpotPoint::setGeometryFlag
void setGeometryFlag(bool p_flag)
Set SpotPoint geometry flag.
DTK_FEAT_COMP_TRANS_ZONE
@ DTK_FEAT_COMP_TRANS_ZONE
Definition: str_feat_dtk.hpp:401
Dtk_feat_inner_thread::get_diameter_has_tol
int get_diameter_has_tol(Bool *)
Tests whether there is a tolerance set on thread diameter.
Dtk_feat_sweep::axis
Dtk_feat_axis * axis
Definition: str_feat_dtk.hpp:2691
Dtk_feat_fillet::get_nb_limits
int get_nb_limits(int *)
Returns Fillet limits number
util_stl_dtk.hpp
Dtk_feat_multi_prism::get_profiles
int get_profiles(Dtk_feat_geometry **)
Returns the multi prism profiles internal component.
DTK_PIPE_PIPE_RUN
@ DTK_PIPE_PIPE_RUN
Definition: str_feat_dtk.hpp:256
Dtk_feat::get_input_geometry
int get_input_geometry(Dtk_feat_geometry **)
Returns inner feature's basis geometry
Dtk_feat_draft::get_type
int get_type(DRAFT_TYPE *)
Returns Draft Type
Dtk_feat_tolerance_set::tol_inf
double tol_inf
Definition: str_feat_dtk.hpp:845
DTK_FEAT_NEGATIVE_LOFT
@ DTK_FEAT_NEGATIVE_LOFT
Definition: str_feat_dtk.hpp:363
Dtk_feat_translate::surfaceTranslate
Dtk_feat_surface_transfo * surfaceTranslate
Definition: str_feat_dtk.hpp:4068
Dtk_feat_user_pattern::get_anchor_point
int get_anchor_point(Dtk_feat_geometry **)
Returns the anchor point of the user pattern feature.
Dtk_feat_fillet::Dtk_feat_fillet
Dtk_feat_fillet()
Dtk_feat_hole::get_counter_depth
int get_counter_depth(double *)
Returns the hole counter depth.
Dtk_feat_prism::get_direction_reversed
int get_direction_reversed(Bool *)
Tests whether the direction is opposite to the reference or not.
Dtk_feat_rect_pattern::get_first_dir
int get_first_dir(Dtk_feat_pattern_dir **)
Returns the first direction definition of the specified rectangular pattern feature.
Dtk_feat_boolean::nb_combined_bodies
long nb_combined_bodies
Definition: str_feat_dtk.hpp:4460
Dtk_feat_inner_thread::GetLimitReference
Dtk_feat_geometry * GetLimitReference() const
Definition: str_feat_dtk.hpp:1443
Dtk_feat_pipe::neutralFiberSet
Dtk_tab< Dtk_pipe_fiber_segment * > neutralFiberSet
Definition: str_feat_dtk.hpp:6487
IND_DEPTH
#define IND_DEPTH
Definition: str_feat_dtk.hpp:26
Dtk_feat::GetFeatBody
Dtk_feat_body * GetFeatBody() const
Definition: str_feat_dtk.hpp:7286
DTK_POINT_MULTI_INTERSECTION
@ DTK_POINT_MULTI_INTERSECTION
Definition: str_feat_dtk.hpp:82
Dtk_feat_revol::first_angle
double first_angle
Definition: str_feat_dtk.hpp:1005
Dtk_feat_loft::deviation
double deviation
Definition: str_feat_dtk.hpp:5537
Dtk_feat::GetType
DTK_FEATURE_TYPE GetType() const
Definition: str_feat_dtk.hpp:7013
DTK_FEAT_COMP_LAMINATE
@ DTK_FEAT_COMP_LAMINATE
Definition: str_feat_dtk.hpp:397
Dtk_feat_stiffener::profile
Dtk_feat_geometry * profile
Definition: str_feat_dtk.hpp:5203
Dtk_feat_fillet::get_type
int get_type(FILLET_TYPE *)
Returns Fillet type
Dtk_feat_shell::nb_removed_faces
int nb_removed_faces
Definition: str_feat_dtk.hpp:2111
Dtk_feat::dtk_feat_type::sheet_metal
Dtk_feat_sheet_metal * sheet_metal
Definition: str_feat_dtk.hpp:6942
Dtk_feat_user_defined_value::geomConnector
Dtk_NodeConnectorPtr geomConnector
Definition: str_feat_dtk.hpp:6091
Dtk_feat::get_sweep
int get_sweep(Dtk_feat_sweep **e)
Returns feature's inner Sweep Feature (RIB|SLOT)
Dtk_feat_thick_surf::get_second_offset
int get_second_offset(double *)
Returns the second offset of the thickness surface.
Dtk_feat_revol::get_end_angle
int get_end_angle(double *)
Returns the first angle value.
DTK_FEAT_REVOL
@ DTK_FEAT_REVOL
Definition: str_feat_dtk.hpp:308
Dtk_feat_tritangent_fillet::get_limiting_element
int get_limiting_element(Dtk_feat_geometry **)
Returns tri-tangent Fillet limiting element
DTK_LOFT_NEGATIVE
@ DTK_LOFT_NEGATIVE
Definition: str_feat_dtk.hpp:52
DTK_NO_TRANSLATE_TYPE
@ DTK_NO_TRANSLATE_TYPE
Definition: str_feat_dtk.hpp:218
Dtk_feat_draft_var_point::construct_geom
long construct_geom
Definition: str_feat_dtk.hpp:4631
Dtk_feat_boolean::get_main_body
int get_main_body(Dtk_FeaturePtr &)
Returns body feature consisting the main body operand of the boolean operation
Dtk_feat_pattern_dir
Definition: str_feat_dtk.hpp:3079
Dtk_feat_loft_guide
Loft Guide.
Definition: str_feat_dtk.hpp:5420
Dtk_feat_pipe::get_end_point
DtkErrorStatus get_end_point(Dtk_pnt &outEndPoint) const
Returns Pipe End Point
Dtk_feat_thread::Dtk_feat_thread
Dtk_feat_thread()
Constructor of Thread Feature
Dtk_feat_parting_element::get_both_sides
int get_both_sides(Bool *)
Returns a boolean value whether parting element is applied over both or one side
Dtk_feat_surface_transfo::Dtk_feat_surface_transfo
Dtk_feat_surface_transfo()
Dtk_feat_thread::HasSupportDepthTolerance
Dtk_bool HasSupportDepthTolerance() const
Definition: str_feat_dtk.hpp:1536
Dtk_feat_rotate_axis::get_angle
int get_angle(double *)
Returns The angle of the rotation feature.
DTK_FEAT_RECT_PATTERN
@ DTK_FEAT_RECT_PATTERN
Definition: str_feat_dtk.hpp:318
Dtk_feat_translate::get_coordinates_translate
int get_coordinates_translate(Dtk_feat_translate_coordinates **)
Returns Coordinates translate entity
Dtk_feat_chamfer::type
CHAMFER_TYPE type
Definition: str_feat_dtk.hpp:1165
NO_ANCHOR_TYPE
@ NO_ANCHOR_TYPE
Definition: str_feat_dtk.hpp:123
Dtk_feat_rect_pattern::second_dir
Dtk_feat_pattern_dir * second_dir
Definition: str_feat_dtk.hpp:3172
Dtk_feat_cst_edge_ribbon::cst_radius
double cst_radius
Definition: str_feat_dtk.hpp:2196
Dtk_feat_hole::get_threaded
int get_threaded(Bool *)
Tests whether the hole is threaded or not.
Dtk_feat_rotate_axis_elements::get_axis
int get_axis(Dtk_feat_axis **)
Returns the axis value of the rotate feature.
Dtk_feat_prism::get_start_limit
int get_start_limit(Dtk_feat_limit **)
Returns the second limit feature.
DTK_PRISM_TYPE
DTK_PRISM_TYPE
Definition: str_feat_dtk.hpp:41
Dtk_feat_user_pattern::get_input_ids
int get_input_ids(Dtk_tab< long > &)
Returns the array of Feature's IDs or Body ID to user pattern feature.
Dtk_feat_tritangent_fillet::face2
Dtk_feat_geometry * face2
Definition: str_feat_dtk.hpp:2623
Dtk_feat_SpotPoint::Welding
@ Welding
Definition: str_feat_dtk.hpp:6626
Dtk_feat_stiffener::get_isReverseDepth
int get_isReverseDepth(Bool *)
Gets the Depth reverse direction boolean of the stiffener feature
Dtk_feat_shell_face::get_outside_thickness
int get_outside_thickness(double *)
Get the outside thickness of the feature Shell Face.
DRIVING_MODE
DRIVING_MODE
Definition: str_feat_dtk.hpp:183
Dtk_feat_udf::get_dtk_feat_udf_feature
void get_dtk_feat_udf_feature(Dtk_FeaturePtr &out)
Gets the hole
Dtk_feat_prism_domain::get_first_limit
int get_first_limit(Dtk_feat_limit **)
Returns the first limit of the prism domain feature.
Dtk_feat_blend_vertex::~Dtk_feat_blend_vertex
~Dtk_feat_blend_vertex()
Dtk_feat_sketch::origin
Dtk_pnt origin
Definition: str_feat_dtk.hpp:600
Dtk_feat_inner_thread::get_pitch
int get_pitch(double *)
Returns the threading pitch.
Dtk_feat_draft_side::Dtk_feat_draft_side
Dtk_feat_draft_side()
Dtk_Pipe_Section::get_profile_set
Dtk_ErrorStatus get_profile_set(Dtk_tab< Dtk_CurvePtr > &outProfileSet) const
Get the set of the current section Profile
Dtk_feat_inner_thread::GetDiameterTolerance
Dtk_feat_tolerance_set * GetDiameterTolerance() const
Definition: str_feat_dtk.hpp:1308
Dtk_feat_rotate::get_type
int get_type(ROTATE_TYPE *)
Returns the type of the rotate feature.
Dtk_feat::dtk_feat_type::shell
Dtk_feat_shell * shell
Definition: str_feat_dtk.hpp:6895
Dtk_feat_thickness::get_thin1
int get_thin1(double *)
Returns inner thickness value.
Dtk_feat::get_pattern
int get_pattern(Dtk_feat_pattern **e)
Returns feature's inner pattern feature (Rectangular & Circular)
Dtk_feat::dtk_feat_type::spot_point
Dtk_feat_SpotPoint * spot_point
Definition: str_feat_dtk.hpp:6954
DTK_FEAT_TRANSLATE
@ DTK_FEAT_TRANSLATE
Definition: str_feat_dtk.hpp:335
Dtk_feat_pipe::_EndPoint
Dtk_pnt _EndPoint
Definition: str_feat_dtk.hpp:6500
Dtk_feat_hole::get_bottom_angle
int get_bottom_angle(double *)
Returns the hole bottom angle.
MIDDLE_ANCHOR_POINT
@ MIDDLE_ANCHOR_POINT
Definition: str_feat_dtk.hpp:122
Dtk_feat_hole::hole_type
HOLE_TYPE hole_type
Definition: str_feat_dtk.hpp:1605
Dtk_feat_inner_thread::HasDepthTolerance
Dtk_bool HasDepthTolerance() const
Definition: str_feat_dtk.hpp:1349
Dtk_feat::GetTranslate
Dtk_feat_translate * GetTranslate() const
Definition: str_feat_dtk.hpp:7360
Dtk_feat::GetUserPattern
Dtk_feat_user_pattern * GetUserPattern() const
Definition: str_feat_dtk.hpp:7262
Dtk_feat_draft_advanced::~Dtk_feat_draft_advanced
~Dtk_feat_draft_advanced()
Destructor of an advanced draft feature.
Dtk_feat_user_pattern::get_object_to_pattern
int get_object_to_pattern(Dtk_feat_geometry **)
Returns the geometry of the object to pattern to pattern.
Dtk_feat_multi_prism::Dtk_feat_multi_prism
Dtk_feat_multi_prism()
Constructor of Multi Prism Feature
Dtk_feat_parting_element::profile
Dtk_feat_geometry * profile
Definition: str_feat_dtk.hpp:4690
Dtk_feat_draft_advanced::get_driving_side
int get_driving_side(DRIVING_SIDE *)
Returns the driving side.
Dtk_feat::get_loft
int get_loft(Dtk_feat_loft **e)
Returns feature's Loft feature
Dtk_feat_prism::get_type
int get_type(DTK_PRISM_TYPE *)
Returns Prism type
Dtk_feat_translate
Definition: str_feat_dtk.hpp:4063
Dtk_feat_inner_thread::GetPitch
Dtk_Double64 GetPitch() const
Definition: str_feat_dtk.hpp:1358
DTK_FEAT_SHM_WALL
@ DTK_FEAT_SHM_WALL
Definition: str_feat_dtk.hpp:424
Dtk_feat_axis::Dtk_feat_axis
Dtk_feat_axis()
Dtk_feat_draft_var_point::get_elt
int get_elt(Dtk_feat_geometry **)
Returns Draft point element
Dtk_feat_inner_thread::right_threaded
Bool right_threaded
Definition: str_feat_dtk.hpp:1258
Dtk_feat::Dtk_feat
Dtk_feat(const Dtk_feat &s)
Copy constructor.
Dtk_feat_pattern_dir::isEqualSpacing
Dtk_bool isEqualSpacing
Definition: str_feat_dtk.hpp:3091
Dtk_feat_hole::relief_active
Dtk_Int32 relief_active
Definition: str_feat_dtk.hpp:1621
Dtk_feat::dtk_feat_type::translate
Dtk_feat_translate * translate
Definition: str_feat_dtk.hpp:6929
Dtk_feat_SpotPoint::Finish
Finish
Definition: str_feat_dtk.hpp:6678
DTK_FROM_TOP
@ DTK_FROM_TOP
Definition: str_feat_dtk.hpp:230
Dtk_feat_draft_advanced
Feature Advanced Draft.
Definition: str_feat_dtk.hpp:4909
DTK_FEAT_SHM_DOWEL
@ DTK_FEAT_SHM_DOWEL
Definition: str_feat_dtk.hpp:471
DTK_FEAT_HOLE
@ DTK_FEAT_HOLE
Definition: str_feat_dtk.hpp:299
Dtk_feat_node::type
NODE_TYPE type
Definition: str_feat_dtk.hpp:7504
DTK_USER_DEFINED_NOVALUE
@ DTK_USER_DEFINED_NOVALUE
Definition: str_feat_dtk.hpp:6083
Dtk_feat_prism_domain
Multi prism domain.
Definition: str_feat_dtk.hpp:5833
Dtk_feat_thread::GetSupportDiameterTolerance
Dtk_feat_tolerance_set * GetSupportDiameterTolerance() const
Definition: str_feat_dtk.hpp:1556
DTK_FEAT_PAD
@ DTK_FEAT_PAD
Definition: str_feat_dtk.hpp:297
DTK_FACE_SELECT
@ DTK_FACE_SELECT
Definition: str_feat_dtk.hpp:157
Dtk_feat_loft_guide::Dtk_feat_loft_guide
Dtk_feat_loft_guide()
Dtk_feat::dtk_feat_type::sweep
Dtk_feat_sweep * sweep
Definition: str_feat_dtk.hpp:6912
Dtk_feat_user_defined_value::get_value_role
int get_value_role(Dtk_string &outRole)
Get the User Defined Value role, defined as the title of the value.
DTK_PRISM_SURF_PAD
@ DTK_PRISM_SURF_PAD
Definition: str_feat_dtk.hpp:45
Dtk_tab
This is a high level array class.
Definition: util_stl_dtk.hpp:84
Dtk_feat_SpotPoint::processCategory
ProcessCategory processCategory() const
Return SpotPoint category.
DTK_FEAT_SHM_UNKNOWN
@ DTK_FEAT_SHM_UNKNOWN
Definition: str_feat_dtk.hpp:420
Dtk_feat_SpotPoint::manufacturingCode
Dtk_string manufacturingCode() const
Return SpotPoint manufacturing code.
Dtk_feat::get_output_geometry
int get_output_geometry(Dtk_feat_geometry **)
Returns inner feature's output geometry
Dtk_feat_draft_side::angle
double angle
Definition: str_feat_dtk.hpp:4575
Dtk_feat_user_defined_value::get_value_string
int get_value_string(Dtk_string &outValue)
Get the User Defined Value.
Dtk_feat_SpotPoint::_78
@ _78
Definition: str_feat_dtk.hpp:6638
Dtk_Pipe_Section
Pipe Section.
Definition: str_feat_dtk.hpp:6430
Dtk_feat::GetBooleanOperation
Dtk_feat_boolean * GetBooleanOperation() const
Definition: str_feat_dtk.hpp:7274
Dtk_feat_edge_ribbon::edge_ribbon_type::cst
Dtk_feat_cst_edge_ribbon * cst
Definition: str_feat_dtk.hpp:2319
Dtk_feat::name
Dtk_string name
Definition: str_feat_dtk.hpp:6884
Dtk_feat_draft::get_variable_draft
int get_variable_draft(Dtk_feat_draft_variable **)
Returns variable draft entity
Dtk_feat_inner_thread::Dtk_feat_inner_thread
Dtk_feat_inner_thread()
Constructor of Inner Thread Feature
DTK_THREAD_TYPE
DTK_THREAD_TYPE
Definition: str_feat_dtk.hpp:280
DTK_SHM_NEW
@ DTK_SHM_NEW
Definition: str_feat_dtk.hpp:240
DTK_PIPE_SPHERICAL_TERMINATOR
@ DTK_PIPE_SPHERICAL_TERMINATOR
Definition: str_feat_dtk.hpp:267
Dtk_feat_draft_reflect_line::Dtk_feat_draft_reflect_line
Dtk_feat_draft_reflect_line()
Constructor of reflect line Draft Feature
Dtk_feat_user_pattern::get_nb_features
int get_nb_features(int *)
Returns the number of features resulted of the user pattern feature.
DTK_POINT_SIMPLE_POINT
@ DTK_POINT_SIMPLE_POINT
Definition: str_feat_dtk.hpp:84
Dtk_feat_rect_pattern
Definition: str_feat_dtk.hpp:3169
Dtk_feat_limit
Limit Feature : Some features contain one or several limit components which describe how their own sh...
Definition: str_feat_dtk.hpp:613
Dtk_feat_user_pattern::dtk_features
Dtk_tab< Dtk_FeaturePtr > dtk_features
Definition: str_feat_dtk.hpp:3518
Dtk_feat_pattern::get_angle
int get_angle(double *)
Returns the rotation angle specified to the pattern feature.
Dtk_feat::dtk_feat_type::hole_series
Dtk_feat_hole_series * hole_series
Definition: str_feat_dtk.hpp:6910
Dtk_feat_pattern_dir::length
double length
Definition: str_feat_dtk.hpp:3085
DTK_PRISM_POCKET
@ DTK_PRISM_POCKET
Definition: str_feat_dtk.hpp:44
Dtk_feat::output_geometry
Dtk_feat_geometry * output_geometry
Definition: str_feat_dtk.hpp:6886
Dtk_feat_mirror::nb_input_ids
int nb_input_ids
Definition: str_feat_dtk.hpp:3705
Dtk_feat::dtk_feat_type::revol
Dtk_feat_revol * revol
Definition: str_feat_dtk.hpp:6908
Dtk_feat_pattern_dir::Dtk_feat_pattern_dir
Dtk_feat_pattern_dir()
Dtk_feat_draft_variable::var_points_nb
int var_points_nb
Definition: str_feat_dtk.hpp:4812
Dtk_feat_sweep::get_profile_control_type
int get_profile_control_type(PROFILE_CONTROL_TYPE *)
Get the profile control type of the feature Sweep.
Dtk_feat_shell::nb_skins
int nb_skins
Definition: str_feat_dtk.hpp:2112
Dtk_feat_hole::GetThreadBottomTypeAsString
Dtk_string GetThreadBottomTypeAsString() const
Dtk_feat_sweep
Feature Sweep (Rib & Slot)
Definition: str_feat_dtk.hpp:2680
Dtk_feat_edge_ribbon::elts
Dtk_feat_geometry ** elts
Definition: str_feat_dtk.hpp:2325
Dtk_feat_shell
Shell Feature : a shell feature is defined with a list of faces corresponding to its opening and two ...
Definition: str_feat_dtk.hpp:2103
DTK_PIPE_HYDRAULICS_RUN
@ DTK_PIPE_HYDRAULICS_RUN
Definition: str_feat_dtk.hpp:260
Dtk_feat_cst_edge_ribbon::~Dtk_feat_cst_edge_ribbon
~Dtk_feat_cst_edge_ribbon()
Dtk_feat_tritangent_fillet::get_face2
int get_face2(Dtk_feat_geometry **)
Returns Second face element to tri-tangent Fillet.
Dtk_feat_fillet_point::ratio
double ratio
Definition: str_feat_dtk.hpp:2221
Dtk_feat_thickness::get_merge_thin
int get_merge_thin(Bool *)
Dtk_feat_boolean::type
DTK_BOOLEAN_TYPE type
Definition: str_feat_dtk.hpp:4461
Dtk_pipe_fiber_segment::typeOfSegment
DTK_PIPE_TYPE typeOfSegment
Definition: str_feat_dtk.hpp:6357
DTK_USER_DEFINED_LENGTH
@ DTK_USER_DEFINED_LENGTH
Definition: str_feat_dtk.hpp:6081
DTK_FEAT_SHM_EXTRUDED_HOLE
@ DTK_FEAT_SHM_EXTRUDED_HOLE
Definition: str_feat_dtk.hpp:445
Dtk_feat_rotate::get_is_surface_rotate
int get_is_surface_rotate(bool *)
Returns the boolean value that indicates if the rotate feature is a surface feature.
Dtk_feat_pattern::get_nb_input_ids
int get_nb_input_ids(int *)
Returns the number of feature's IDs to pattern.
Dtk_feat_rotate_points::first_point
Dtk_pnt first_point
Definition: str_feat_dtk.hpp:4220
Dtk_feat_pattern_dir::get_nb_instances
int get_nb_instances(int *)
Returns Number of occurrences in this pattern direction (including the base feature to repeat)
Dtk_feat_SpotPoint::_135
@ _135
Definition: str_feat_dtk.hpp:6637
DTK_SECTION_DOUBLE_RIDGE
@ DTK_SECTION_DOUBLE_RIDGE
Definition: str_feat_dtk.hpp:277
Dtk_feat_surface_transfo
Definition: str_feat_dtk.hpp:3642
Dtk_feat_revol::profiles
Dtk_feat_geometry * profiles
Definition: str_feat_dtk.hpp:1002
Dtk_feat_rotate_axis::Dtk_feat_rotate_axis
Dtk_feat_rotate_axis()
Constructor of a rotation with axis Feature
Dtk_feat_loft::loftSections
Dtk_tab< Dtk_feat_loft_section * > loftSections
Definition: str_feat_dtk.hpp:5528
Dtk_feat_inner_thread::thread_limit_reference
Dtk_feat_geometry * thread_limit_reference
Definition: str_feat_dtk.hpp:1264
Dtk_feat_draft_advanced::Dtk_feat_draft_advanced
Dtk_feat_draft_advanced()
Constructor of advanced Draft Feature
Dtk_feat_prism::get_profiles
int get_profiles(Dtk_feat_geometry **)
Returns the profile internal component.
Dtk_feat_hole::HasCounterAngleTolerance
Dtk_bool HasCounterAngleTolerance() const
Definition: str_feat_dtk.hpp:1920
DTK_FEAT_SHM_FLANGE
@ DTK_FEAT_SHM_FLANGE
Definition: str_feat_dtk.hpp:433
util_geom_ptr_dtk.hpp
Dtk_feat_hole::GetDepth
Dtk_Double64 GetDepth() const
Definition: str_feat_dtk.hpp:1763
Dtk_feat_SpotPoint::Class_A
@ Class_A
Definition: str_feat_dtk.hpp:6679
Dtk_feat_draft::draft_faces_nb
int draft_faces_nb
Definition: str_feat_dtk.hpp:5037
Dtk_feat_thickness::thickThin2
double thickThin2
Definition: str_feat_dtk.hpp:735
Dtk_feat_hole_series::get_dtk_feat_hole_series_start
void get_dtk_feat_hole_series_start(Dtk_FeaturePtr &out)
Gets the hole start.
Dtk_feat::GetRemoveFace
Dtk_feat_remove_face * GetRemoveFace() const
Definition: str_feat_dtk.hpp:7335
Dtk_feat_hole::GetDiameter
Dtk_Double64 GetDiameter() const
Definition: str_feat_dtk.hpp:1732
Dtk_feat_tritangent_fillet::face1
Dtk_feat_geometry * face1
Definition: str_feat_dtk.hpp:2622
Dtk_feat_translate::dtk_translate_type
Definition: str_feat_dtk.hpp:4070
Dtk_feat_thickness_feat::~Dtk_feat_thickness_feat
~Dtk_feat_thickness_feat()
Destructor of a Thickness feature.
Dtk_feat_hole::GetDepthTolerance
Dtk_feat_tolerance_set * GetDepthTolerance() const
Definition: str_feat_dtk.hpp:1773
Dtk_feat::get_surf_feature
int get_surf_feature(Dtk_feat_surf_feature **e)
Returns feature's Surface feature
Dtk_feat_prism::get_thickness
int get_thickness(Dtk_feat_thickness **)
Returns thickness of a prism.
DTK_FEAT_FACE_FILLET
@ DTK_FEAT_FACE_FILLET
Definition: str_feat_dtk.hpp:339
Dtk_feat_rotate::type
ROTATE_TYPE type
Definition: str_feat_dtk.hpp:4354
Dtk_feat_fillet::objects_to_fillet
Dtk_feat_edge_ribbon ** objects_to_fillet
Definition: str_feat_dtk.hpp:2433
Dtk_feat_thickness_feat::get_default_thickness
int get_default_thickness(double *)
Get the default thickness value of the feature Thickness.
Dtk_feat_hole::get_counter_angle_has_tol
int get_counter_angle_has_tol(Bool *)
Tests whether there is a tolerance set on counter angle.
Dtk_feat_translate_coordinates::get_axis_system
int get_axis_system(Dtk_transfo **)
Returns the Axis System of the coordinate translate feature.
Dtk_feat_stiffener::isReverseThickness
Bool isReverseThickness
Definition: str_feat_dtk.hpp:5208
Dtk_feat_SpotPoint::location
Dtk_pnt location() const
Return SpotPoint location.
Dtk_feat_fillet::~Dtk_feat_fillet
~Dtk_feat_fillet()
Dtk_feat_hole::feat_sketch
Dtk_feat_sketch * feat_sketch
Definition: str_feat_dtk.hpp:1616
Dtk_pipe_fiber_segment::get_spline_curve
DtkErrorStatus get_spline_curve(Dtk_CurvePtr &splineCurveOut) const
Returns fiber Spline Curve
NO_HOLE_TYPE
@ NO_HOLE_TYPE
Definition: str_feat_dtk.hpp:112
Dtk_feat_prism::axis
Dtk_feat_axis * axis
Definition: str_feat_dtk.hpp:872
Dtk_feat_thickness::mergeThin
Bool mergeThin
Definition: str_feat_dtk.hpp:738
Dtk_feat_user_pattern::get_nb_points
int get_nb_points(int *)
Returns the number of points to user pattern.
Dtk_feat_circ_pattern::nb_circles
int nb_circles
Definition: str_feat_dtk.hpp:3210
Dtk_feat_close_surf
Generic Close Surface.
Definition: str_feat_dtk.hpp:2913
DTK_FEAT_CIRC_PATTERN
@ DTK_FEAT_CIRC_PATTERN
Definition: str_feat_dtk.hpp:319
LINEAR
@ LINEAR
Definition: str_feat_dtk.hpp:129
Dtk_Object::DtkDynamicType
virtual int DtkDynamicType(const int &inId)=0
Dtk_feat_circ_pattern::get_axial_reference
int get_axial_reference(Dtk_feat_pattern_dir **)
Returns the definition of the specified circular pattern feature (parameters + direction).
Dtk_feat_blend_vertex::set_back_distance
double set_back_distance
Definition: str_feat_dtk.hpp:2399
DTK_FEAT_SHM_JOGGLE
@ DTK_FEAT_SHM_JOGGLE
Definition: str_feat_dtk.hpp:478
DTK_LOFT_TYPE
DTK_LOFT_TYPE
Definition: str_feat_dtk.hpp:49
Dtk_feat_hole::get_axis
int get_axis(Dtk_feat_axis **)
Returns the hole axis.
Dtk_feat_rotate_axis_elements
Definition: str_feat_dtk.hpp:4282
SQUARE
@ SQUARE
Definition: str_feat_dtk.hpp:179
DTK_FEAT_MIRROR
@ DTK_FEAT_MIRROR
Definition: str_feat_dtk.hpp:321
Dtk_feat_translate_direction
Generic Translate Feature.
Definition: str_feat_dtk.hpp:3879
Dtk_feat_revol::get_reference_axis
int get_reference_axis(Dtk_feat_axis **)
Returns the revolution axis.
Dtk_feat_pattern::get_rect_pattern
int get_rect_pattern(Dtk_feat_rect_pattern **)
Returns the rectangular entity of the pattern feature.
Dtk_feat_udf::Dtk_feat_udf
Dtk_feat_udf()
Constructor of Dtk_feat_udf
DTK_FEAT_SHM_WEB
@ DTK_FEAT_SHM_WEB
Definition: str_feat_dtk.hpp:476
Dtk_feat_shell_face::outside_thickness
double outside_thickness
Definition: str_feat_dtk.hpp:788
Dtk_feat_translate_coordinates::AxisSystem
Dtk_transfo * AxisSystem
Definition: str_feat_dtk.hpp:3989
FIRST_SIDE
@ FIRST_SIDE
Definition: str_feat_dtk.hpp:191
Dtk_feat_parting_element::get_profile
int get_profile(Dtk_feat_geometry **)
Returns Parting element geometry
Dtk_feat_fillet::get_corners
int get_corners(Dtk_feat_blend_vertex ***)
Returns Fillet corners
Dtk_feat::GetPattern
Dtk_feat_pattern * GetPattern() const
Definition: str_feat_dtk.hpp:7249
Dtk_feat_SpotPoint::ProcessCategory
ProcessCategory
Definition: str_feat_dtk.hpp:6625
DTK_BOOLEAN_REMOVE_LUMP
@ DTK_BOOLEAN_REMOVE_LUMP
Definition: str_feat_dtk.hpp:37
Dtk_feat_SpotPoint::Laser
@ Laser
Definition: str_feat_dtk.hpp:6636
Dtk_feat_body::~Dtk_feat_body
~Dtk_feat_body()
Destructor of a body feature
Dtk_feat_pattern::dtk_pattern_type
Definition: str_feat_dtk.hpp:3279
DTK_CIRC_PATTERN
@ DTK_CIRC_PATTERN
Definition: str_feat_dtk.hpp:148
Dtk_feat_loft::relimited_end_section
Bool relimited_end_section
Definition: str_feat_dtk.hpp:5541
Dtk_feat::GetSewSurface
Dtk_feat_sew_surf * GetSewSurface() const
Definition: str_feat_dtk.hpp:7323
Dtk_feat_draft_constant::get_selection
int get_selection(SELECTION_MODE *)
Returns Constant Draft selection mode
Dtk_feat_thread::HasSupportDiameterTolerance
Dtk_bool HasSupportDiameterTolerance() const
Definition: str_feat_dtk.hpp:1566
DTK_FEAT_LOFT
@ DTK_FEAT_LOFT
Definition: str_feat_dtk.hpp:343
Dtk_feat_pattern_dir::get_reverse
int get_reverse(Bool *)
Returns the boolean value for the reverse status of the pattern direction.
Dtk_feat_axis::origin
Dtk_pnt origin
Definition: str_feat_dtk.hpp:565
Dtk_feat_prism_domain::first_limit
Dtk_feat_limit * first_limit
Definition: str_feat_dtk.hpp:5838
Dtk_feat_sweep::merge_sweep_ends
Bool merge_sweep_ends
Definition: str_feat_dtk.hpp:2698
Dtk_feat_pattern_dir::get_instance_spacing_array
int get_instance_spacing_array(Dtk_tab< double > *)
Returns the list of unequal spacing values ( available if get_is_equal_spacing returns DTK_FALSE)
Dtk_feat_hole::GetBottomAngle
Dtk_Double64 GetBottomAngle() const
Definition: str_feat_dtk.hpp:1794
DTK_FEAT_SHM_PATTERN_USER
@ DTK_FEAT_SHM_PATTERN_USER
Definition: str_feat_dtk.hpp:452
Dtk_Object
Definition: dtk_object.hpp:8
Dtk_feat_split_surf::side
Bool side
Definition: str_feat_dtk.hpp:2810
Dtk_feat_draft_advanced::get_selection
int get_selection(SELECTION_MODE *)
Returns advanced Draft selection mode
Dtk_feat_sweep::get_control_object_selection
int get_control_object_selection(Dtk_feat_geometry **)
Get selection control object of feature Sweep.
Dtk_feat_loft_guide::get_guide_curve
int get_guide_curve(Dtk_feat_geometry **)
Returns loft guide curve.
DTK_PIPE_UNKNOWN
@ DTK_PIPE_UNKNOWN
Definition: str_feat_dtk.hpp:254
Dtk_feat_shell_face::get_inside_thickness
int get_inside_thickness(double *)
Get the inside thickness of the feature Shell Face.
Dtk_feat::get_split_surf
int get_split_surf(Dtk_feat_split_surf **e)
Returns feature's inner split surface feature
Dtk_feat::dtk_feat_type::user_pattern
Dtk_feat_user_pattern * user_pattern
Definition: str_feat_dtk.hpp:6927
Dtk_feat_user_pattern::get_features
int get_features(Dtk_tab< Dtk_FeaturePtr > &)
Returns the array of features resulted of the user pattern feature.
Dtk_feat_hole::GetSunkDiameter
Dtk_Double64 GetSunkDiameter() const
Definition: str_feat_dtk.hpp:1836
Dtk_feat_SpotPoint::setInspectionFlag
void setInspectionFlag(bool p_flag)
Set SpotPoint inspection flag.
Dtk_feat_loft::loftGuides
Dtk_tab< Dtk_feat_loft_guide * > loftGuides
Definition: str_feat_dtk.hpp:5531
Dtk_feat_tritangent_fillet
Generic Feature Face Fillet.
Definition: str_feat_dtk.hpp:2618
DTK_FEAT_HOLE_FOR_FASTENER
@ DTK_FEAT_HOLE_FOR_FASTENER
Definition: str_feat_dtk.hpp:347
Dtk_feat_SpotPoint::Manufacturing
@ Manufacturing
Definition: str_feat_dtk.hpp:6665
Dtk_feat_user_defined_value::role
Dtk_string role
Definition: str_feat_dtk.hpp:6093
Dtk_feat_revol::type
DTK_REVOL_TYPE type
Definition: str_feat_dtk.hpp:1008
Dtk_feat_pattern::get_nb_instances
int get_nb_instances(int *)
Returns the number of whole instances generated by the pattern feature .
DTK_THREAD_DIMENSION
@ DTK_THREAD_DIMENSION
Definition: str_feat_dtk.hpp:287
Dtk_feat_hole::get_depth_has_tol
int get_depth_has_tol(Bool *)
Tests whether there is a tolerance set on depth.
Dtk_feat_hole::hole_threaded
Bool hole_threaded
Definition: str_feat_dtk.hpp:1610
Dtk_feat_thickness_face::~Dtk_feat_thickness_face
~Dtk_feat_thickness_face()
Destructor of a Thickness face feature.
Dtk_feat_loft_guide::guideDimension
int guideDimension
Definition: str_feat_dtk.hpp:5427
Dtk_feat_face_fillet::face1
Dtk_feat_geometry * face1
Definition: str_feat_dtk.hpp:2539
Dtk_feat_face_fillet::get_face2
int get_face2(Dtk_feat_geometry **)
Returns Second face element to Fillet.
Dtk_feat_loft_section::get_section_curve
int get_section_curve(Dtk_feat_geometry **)
Returns loft section curve.
Dtk_feat_multi_prism::~Dtk_feat_multi_prism
~Dtk_feat_multi_prism()
Destructor of a Multi prism feature.
Dtk_feat_draft::Dtk_feat_draft
Dtk_feat_draft()
Constructor of Draft Feature
Dtk_feat_shell_face::Dtk_feat_shell_face
Dtk_feat_shell_face()
Constructor of Shell Face Feature
Dtk_feat_SpotPoint::setDiameter
void setDiameter(double p_diam)
Set SpotPoint diameter.
DTK_FEAT_SHM_STIFFENING_RIB
@ DTK_FEAT_SHM_STIFFENING_RIB
Definition: str_feat_dtk.hpp:448
Dtk_feat_SpotPoint::Unspecified_Welding
@ Unspecified_Welding
Definition: str_feat_dtk.hpp:6640
Dtk_feat_shell_face::inside_thickness
double inside_thickness
Definition: str_feat_dtk.hpp:787
Dtk_feat::dtk_feat_type::user_defined
Dtk_feat_user_defined * user_defined
Definition: str_feat_dtk.hpp:6948
Dtk_feat_inner_thread::no_standard_table
Bool no_standard_table
Definition: str_feat_dtk.hpp:1259
Dtk_feat_circ_pattern::crown_thickness
double crown_thickness
Definition: str_feat_dtk.hpp:3207
Dtk_pipe_fiber_segment::_orientationPlane
Dtk_PlaneSurfacePtr _orientationPlane
Definition: str_feat_dtk.hpp:6361
Dtk_feat_hole::GetCounterDiameter
Dtk_Double64 GetCounterDiameter() const
Definition: str_feat_dtk.hpp:1825
Dtk_pipe_fiber_segment::_sectionSetPoint
SECTION_SET_POINT _sectionSetPoint
Definition: str_feat_dtk.hpp:6359
Dtk_feat::GetThicknessFeature
Dtk_feat_thickness_feat * GetThicknessFeature() const
Definition: str_feat_dtk.hpp:7461
Dtk_feat_pattern::~Dtk_feat_pattern
~Dtk_feat_pattern()
Dtk_feat_fillet::nb_limits
int nb_limits
Definition: str_feat_dtk.hpp:2436
Dtk_feat_thread::support
Dtk_feat_geometry * support
Definition: str_feat_dtk.hpp:1457
Dtk_feat_fillet::propagation
PROPAGATION_TYPE propagation
Definition: str_feat_dtk.hpp:2441
Dtk_feat_user_defined::get_user_defined_value_by_pos
int get_user_defined_value_by_pos(int pos, Dtk_feat_user_defined_value &outUserDefinedValue)
Get the User Defined Feature Value by its position
Dtk_feat_chamfer::get_type
int get_type(CHAMFER_TYPE *)
Returns Chamfer type
Dtk_feat_surf_feature::surfFeatType
DTK_SURF_FEATURE_TYPE surfFeatType
Definition: str_feat_dtk.hpp:6197
Dtk_feat_rotate_axis_elements::Dtk_feat_rotate_axis_elements
Dtk_feat_rotate_axis_elements()
Constructor of a "Axis-Element" Rotation Feature
Dtk_feat_hole::counter_params
Dtk_counter_params counter_params
Definition: str_feat_dtk.hpp:1606
Dtk_feat_SpotPoint::ProcessType
ProcessType
Definition: str_feat_dtk.hpp:6632
Dtk_feat_rotate_points
Definition: str_feat_dtk.hpp:4218
Dtk_feat_hole::GetNeckDepth
Dtk_Double64 GetNeckDepth() const
return the depth of the neck
Definition: str_feat_dtk.hpp:1980
Dtk_feat_shell::default_inside_thickness
double default_inside_thickness
Definition: str_feat_dtk.hpp:2109
Dtk_feat_circ_pattern::get_nb_circles
int get_nb_circles(int *)
Returns the number of crown created from the original circular pattern (including the base circ patte...
Dtk_feat::GetChamfer
Dtk_feat_chamfer * GetChamfer() const
Definition: str_feat_dtk.hpp:7213
Dtk_feat_hole::sketch
Dtk_feat_geometry * sketch
Definition: str_feat_dtk.hpp:1612
Dtk_feat_tolerance_set::tol_sup
double tol_sup
Definition: str_feat_dtk.hpp:846
CONE
@ CONE
Definition: str_feat_dtk.hpp:178
Dtk_feat_prism_domain::second_limit
Dtk_feat_limit * second_limit
Definition: str_feat_dtk.hpp:5839
Dtk_feat::get_close_surf
int get_close_surf(Dtk_feat_close_surf **e)
Returns feature's inner close (fill) surface feature
DTK_COUPLING_VERTICES
@ DTK_COUPLING_VERTICES
Definition: str_feat_dtk.hpp:249
Dtk_feat_rotate_axis_elements::get_first_element
int get_first_element(Dtk_feat_geometry **)
Returns the first element of the rotate feature.
FILLET_TYPE
FILLET_TYPE
Definition: str_feat_dtk.hpp:88
Dtk_feat_loft_guide::guideCurve
Dtk_feat_geometry * guideCurve
Definition: str_feat_dtk.hpp:5426
Dtk_feat_loft::~Dtk_feat_loft
~Dtk_feat_loft()
Destructor of a Loft feature.
Dtk_feat_chamfer_ribbon::nb_objects
int nb_objects
Definition: str_feat_dtk.hpp:1113
DTK_SIMPLE_FEATURE
@ DTK_SIMPLE_FEATURE
Definition: str_feat_dtk.hpp:199
NO_DTK_PRISM_TYPE
@ NO_DTK_PRISM_TYPE
Definition: str_feat_dtk.hpp:46
Dtk_pipe_fiber_segment::get_TurnRadius
DtkErrorStatus get_TurnRadius(double &outTurnRadius) const
Returns Pipe Turn Radius value.
Dtk_feat_rect_pattern::Dtk_feat_rect_pattern
Dtk_feat_rect_pattern()
Dtk_feat::GetSplitSurface
Dtk_feat_split_surf * GetSplitSurface() const
Definition: str_feat_dtk.hpp:7298
Dtk_feat_surf_feature::surfFeatGeometry
Dtk_feat_geometry * surfFeatGeometry
Definition: str_feat_dtk.hpp:6198
Dtk_feat_hole::GetNeckDiameter
Dtk_Double64 GetNeckDiameter() const
return the diameter of the neck
Definition: str_feat_dtk.hpp:1975
Dtk_feat_pipe::_Height
double _Height
Definition: str_feat_dtk.hpp:6491
Dtk_feat::GetScaling
Dtk_feat_scaling * GetScaling() const
Definition: str_feat_dtk.hpp:7411
Dtk_feat_hole::GetCounterAngle
Dtk_Double64 GetCounterAngle() const
Definition: str_feat_dtk.hpp:1899
Dtk_feat_mirror::get_gener_tool
int get_gener_tool(bool *)
Returns the generated tool status to indicate whether features generated of the mirror have to be got...
Dtk_feat_fillet_point
Fillet point.
Definition: str_feat_dtk.hpp:2215
DTK_THREAD_UNKNOWN
@ DTK_THREAD_UNKNOWN
Definition: str_feat_dtk.hpp:281
DTK_FEAT_SYMMETRY
@ DTK_FEAT_SYMMETRY
Definition: str_feat_dtk.hpp:367
DTK_FEAT_SHM_WALL_RECOGNITION
@ DTK_FEAT_SHM_WALL_RECOGNITION
Definition: str_feat_dtk.hpp:423
DTK_FEAT_RIB
@ DTK_FEAT_RIB
Definition: str_feat_dtk.hpp:310
Dtk_feat_shell::get_nb_skins
int get_nb_skins(int *)
Get the number of skins of the feature Shell.
Dtk_feat::associated_geometry
Dtk_feat_geometry * associated_geometry
Definition: str_feat_dtk.hpp:6887
Dtk_feat_tritangent_fillet::Dtk_feat_tritangent_fillet
Dtk_feat_tritangent_fillet()
Dtk_feat_inner_thread::thread_params
Dtk_thread_params thread_params
Definition: str_feat_dtk.hpp:1255
Dtk_feat_pattern::objects_placement
Dtk_tab< Dtk_transfo > objects_placement
Definition: str_feat_dtk.hpp:3288
NO_FILLET_VARIATION_TYPE
@ NO_FILLET_VARIATION_TYPE
Definition: str_feat_dtk.hpp:130
Dtk_feat_inner_thread::get_thread_limit_reference
int get_thread_limit_reference(Dtk_feat_geometry **)
Returns the thread limit reference plane if exists.
Dtk_feat_user_pattern::get_nb_input_ids
int get_nb_input_ids(int *)
Returns the number of feature's IDs to user pattern feature.
Dtk_feat_fillet_point::get_ratio
int get_ratio(double *)
Returns fillet point ratio on attached edge
Dtk_feat_draft_neutral_element::get_propagation
int get_propagation(PROPAGATION_TYPE *)
Returns Neutral Propagation
Dtk_feat_limit::get_reference_object
int get_reference_object(Dtk_feat_geometry **)
Returns the limit reference object if any.
Dtk_feat_pipe::_StartPoint
Dtk_pnt _StartPoint
Definition: str_feat_dtk.hpp:6499
Dtk_feat_draft::get_draft_faces_nb
int get_draft_faces_nb(int *)
Returns number of Draft faces in case of multi faces selection mode.
DTK_FEAT_SHM_HEM
@ DTK_FEAT_SHM_HEM
Definition: str_feat_dtk.hpp:434
Dtk_feat_sweep::thickness
Dtk_feat_thickness * thickness
Definition: str_feat_dtk.hpp:2689
Dtk_feat_edge_ribbon::nb_kept_edges
int nb_kept_edges
Definition: str_feat_dtk.hpp:2328
Dtk_feat::GetHole
Dtk_feat_hole * GetHole() const
Definition: str_feat_dtk.hpp:7093
Dtk_feat_mirror::dtk_features
Dtk_tab< Dtk_FeaturePtr > dtk_features
Definition: str_feat_dtk.hpp:3702
Dtk_feat::dtk_feat_type::chamfer
Dtk_feat_chamfer * chamfer
Definition: str_feat_dtk.hpp:6899
Dtk_feat_pattern_dir::get_spacing
int get_spacing(double *)
Returns the distance between two consecutive occurrences
DTK_FEAT_USER_PATTERN
@ DTK_FEAT_USER_PATTERN
Definition: str_feat_dtk.hpp:320
DTK_FEAT_SHM_STAMP_SURFACE
@ DTK_FEAT_SHM_STAMP_SURFACE
Definition: str_feat_dtk.hpp:443
Dtk_feat_inner_thread::thread_type
DTK_THREAD_TYPE thread_type
Definition: str_feat_dtk.hpp:1261
Dtk_feat_inner_thread::GetLimitType
DTK_THREAD_LIMIT_TYPE GetLimitType() const
Definition: str_feat_dtk.hpp:1433
Dtk_feat_hole::GetEndAngle
Dtk_Double64 GetEndAngle() const
return the angle of the end chamfer
Definition: str_feat_dtk.hpp:1990
Dtk_feat_thickness_face
Face to thicken.
Definition: str_feat_dtk.hpp:679
Dtk_feat_mirror::get_object_to_mirror
int get_object_to_mirror(Dtk_feat_geometry ***)
Returns the set of objects geometry to mirror.
Dtk_feat_pattern_dir::get_is_equal_spacing
int get_is_equal_spacing(Dtk_bool *)
Returns the boolean value to check if instances are equal spacing.
DTK_USER_DEFINED_INT
@ DTK_USER_DEFINED_INT
Definition: str_feat_dtk.hpp:6078
Dtk_feat_fillet::get_limiting_list
int get_limiting_list(Dtk_feat_geometry ***)
Returns Fillet limiting list
Dtk_feat_face_fillet::radius
double radius
Definition: str_feat_dtk.hpp:2538
Dtk_feat_inner_thread::HasPitchTolerance
Dtk_bool HasPitchTolerance() const
Definition: str_feat_dtk.hpp:1378
Dtk_feat_face_fillet
Generic Feature Face Fillet.
Definition: str_feat_dtk.hpp:2534
Dtk_feat::get_stiffener
int get_stiffener(Dtk_feat_stiffener **e)
Returns feature's stiffener feature
DTK_FEAT_COMP_PARAMETERS
@ DTK_FEAT_COMP_PARAMETERS
Definition: str_feat_dtk.hpp:402
Dtk_feat_hole::get_sunk_diameter
int get_sunk_diameter(double *)
Returns the hole counter diameter.
Dtk_feat::get_user_pattern
int get_user_pattern(Dtk_feat_user_pattern **e)
Returns feature's inner user pattern feature.
Dtk_feat_body::get_inner_feat_tab
int get_inner_feat_tab(Dtk_tab< Dtk_FeaturePtr > &)
Get the body array containing pointers to direct inner features
CUBIC
@ CUBIC
Definition: str_feat_dtk.hpp:128
Dtk_feat::get_boolean_operation
int get_boolean_operation(Dtk_feat_boolean **e)
Returns feature's inner boolean operation feature.
Dtk_feat_mirror::object_type
DTK_OBJECT_TYPE object_type
Definition: str_feat_dtk.hpp:3709
NO_DRIVING_MODE
@ NO_DRIVING_MODE
Definition: str_feat_dtk.hpp:187
Dtk_feat_translate_point::Dtk_feat_translate_point
Dtk_feat_translate_point()
Constructor of a Point to Point translate Feature
Dtk_feat_SpotPoint::Robustness
Robustness
Definition: str_feat_dtk.hpp:6661
Dtk_feat_chamfer::propagation
PROPAGATION_TYPE propagation
Definition: str_feat_dtk.hpp:1164
Dtk_feat_var_edge_ribbon::variation
FILLET_VARIATION_TYPE variation
Definition: str_feat_dtk.hpp:2281
Dtk_feat_rotate_points::Dtk_feat_rotate_points
Dtk_feat_rotate_points()
Constructor of a "Three Points" rotation Feature
Dtk_feat_sketch::hdir
Dtk_dir hdir
Definition: str_feat_dtk.hpp:601
Dtk_feat::dtk_feat_type::replace_face
Dtk_feat_replace_face * replace_face
Definition: str_feat_dtk.hpp:6915
Dtk_feat_thickness_face::thickness
double thickness
Definition: str_feat_dtk.hpp:683
DRAFT_FORM
DRAFT_FORM
Definition: str_feat_dtk.hpp:177
Dtk_feat_draft_var_point::get_angle
int get_angle(double *)
Returns fillet point angle
DTK_FEAT_SHM_HOPPER
@ DTK_FEAT_SHM_HOPPER
Definition: str_feat_dtk.hpp:461
DTK_FEAT_SHM_WALL_ON_EDGE
@ DTK_FEAT_SHM_WALL_ON_EDGE
Definition: str_feat_dtk.hpp:425
Dtk_feat_tolerance_set::GetSuperiorTolerance
Dtk_Double64 GetSuperiorTolerance() const
Definition: str_feat_dtk.hpp:848
Dtk_feat_user_defined_value::stringValue
Dtk_string stringValue
Definition: str_feat_dtk.hpp:6092
DTK_COUPLING_TANGENCY_THEN_CURVATURE
@ DTK_COUPLING_TANGENCY_THEN_CURVATURE
Definition: str_feat_dtk.hpp:248
Dtk_feat_draft_neutral_element::propagation
PROPAGATION_TYPE propagation
Definition: str_feat_dtk.hpp:4523
DTK_FEAT_GEOMETRICAL_SET
@ DTK_FEAT_GEOMETRICAL_SET
Definition: str_feat_dtk.hpp:355
Dtk_feat_fillet_point::radius
double radius
Definition: str_feat_dtk.hpp:2220
Dtk_feat_hole::get_counter_diameter_has_tol
int get_counter_diameter_has_tol(Bool *)
Tests whether there is a tolerance set on counter diameter.
Dtk_feat_draft::default_direction
Dtk_feat_axis * default_direction
Definition: str_feat_dtk.hpp:5032
Dtk_feat_pattern::row2
int row2
Definition: str_feat_dtk.hpp:3293
Dtk_feat_scaling::reference
Dtk_feat_geometry * reference
Definition: str_feat_dtk.hpp:5324
Dtk_feat_hole::neck_params
Dtk_hole_params neck_params
Definition: str_feat_dtk.hpp:1624
Dtk_feat_thread::GetSupport
Dtk_feat_geometry * GetSupport() const
Definition: str_feat_dtk.hpp:1505
NO_DTK_OBJECT_TYPE
@ NO_DTK_OBJECT_TYPE
Definition: str_feat_dtk.hpp:158
DTK_NO_COUPLING
@ DTK_NO_COUPLING
Definition: str_feat_dtk.hpp:250
Dtk_feat_SpotPoint::Regulation
Regulation
Definition: str_feat_dtk.hpp:6670
Dtk_feat_SpotPoint::setProcessType
void setProcessType(ProcessType p_type)
Set SpotPoint type.
DTK_FEAT_REMOVE_FACE
@ DTK_FEAT_REMOVE_FACE
Definition: str_feat_dtk.hpp:337
Dtk_feat::id
long id
Definition: str_feat_dtk.hpp:6881
Dtk_feat_boolean::get_nb_combined_bodies
int get_nb_combined_bodies(long *)
Returns number of the bodies involved in the combined feature body of the boolean operation
Dtk_feat_close_surf::tolerance
double tolerance
Definition: str_feat_dtk.hpp:2918
Dtk_feat_multi_prism::get_direction
int get_direction(Dtk_feat_axis **)
Returns the multi prism (extrusion or pocket) direction.
NODE_TYPE
NODE_TYPE
Definition: str_feat_dtk.hpp:196
Dtk_feat::GetSweep
Dtk_feat_sweep * GetSweep() const
Definition: str_feat_dtk.hpp:7202
Dtk_feat_rotate_axis::get_axis
int get_axis(Dtk_feat_axis **)
Returns the axis of the rotation feature.
Dtk_feat_node::get_id
int get_id(long *)
Get the id if the node is Root type
DTK_THREAD_THREAD
@ DTK_THREAD_THREAD
Definition: str_feat_dtk.hpp:283
Dtk_feat_SpotPoint::setFinish
void setFinish(Dtk_string const &p_finish)
Set SpotPoint finish.
Dtk_feat_pattern::get_input_ids
int get_input_ids(Dtk_tab< long > &)
Returns the array of Feature's IDs or Body ID to pattern.
Dtk_feat_shell_face::get_face
int get_face(Dtk_feat_geometry **)
Get the face geometry of the feature Shell Face.
Dtk_feat_hole::GetDiameterTolerance
Dtk_feat_tolerance_set * GetDiameterTolerance() const
Definition: str_feat_dtk.hpp:1742
Dtk_feat_hole_series::get_dtk_feat_hole_series_end
void get_dtk_feat_hole_series_end(Dtk_FeaturePtr &out)
Gets the hole end.
Dtk_feat_draft::limiting_elements_nb
int limiting_elements_nb
Definition: str_feat_dtk.hpp:5036
Dtk_feat_hole::get_bottom_angle_has_tol
int get_bottom_angle_has_tol(Bool *)
Tests whether there is a tolerance set on bottom angle.
Dtk_feat_fillet_point::get_radius
int get_radius(double *)
Returns fillet point radius
Dtk_feat_pipe::get_start_section
DtkErrorStatus get_start_section(Dtk_Pipe_Section *&outStartSection) const
Returns Pipe start Section
Dtk_dir
This is a mathematical direction class.
Definition: dtk_dir.hpp:14
Dtk_feat_thick_surf::surface
Dtk_feat_geometry * surface
Definition: str_feat_dtk.hpp:2844
DTK_FEAT_SHM_SWEPT_FLANGE
@ DTK_FEAT_SHM_SWEPT_FLANGE
Definition: str_feat_dtk.hpp:436
Dtk_feat_SpotPoint::Non_Structural_Adhesive
@ Non_Structural_Adhesive
Definition: str_feat_dtk.hpp:6643
Dtk_feat_fillet_point::point_construction
DTK_POINT_CONSTRUCTION point_construction
Definition: str_feat_dtk.hpp:2223
Dtk_feat_thickness_feat::Dtk_feat_thickness_feat
Dtk_feat_thickness_feat()
Constructor of Thickness Feature
NO_DTK_REVOL_TYPE
@ NO_DTK_REVOL_TYPE
Definition: str_feat_dtk.hpp:60
DTK_AXIS_TWO_ELEMENTS
@ DTK_AXIS_TWO_ELEMENTS
Definition: str_feat_dtk.hpp:223
Dtk_feat_thickness_face::face
Dtk_feat_geometry * face
Definition: str_feat_dtk.hpp:682
Dtk_feat_parting_element
Draft Parting Element.
Definition: str_feat_dtk.hpp:4686
Dtk_feat::GetMultiPrism
Dtk_feat_multi_prism * GetMultiPrism() const
Definition: str_feat_dtk.hpp:7179
Dtk_feat_thickness::Dtk_feat_thickness
Dtk_feat_thickness()
Dtk_feat_stiffener::get_isReverseThickness
int get_isReverseThickness(Bool *)
Gets the Thickness reverse direction boolean of the stiffener feature
DTK_FEAT_USER_DEFINED
@ DTK_FEAT_USER_DEFINED
Definition: str_feat_dtk.hpp:370
DTK_FEAT_PIPE
@ DTK_FEAT_PIPE
Definition: str_feat_dtk.hpp:379
Dtk_feat_limit::GetVal
Dtk_Double64 GetVal() const
Definition: str_feat_dtk.hpp:659
Dtk_feat_scaling::ratio
double ratio
Definition: str_feat_dtk.hpp:5325
COUNTER_BORED
@ COUNTER_BORED
Definition: str_feat_dtk.hpp:108
Dtk_feat::GetLoft
Dtk_feat_loft * GetLoft() const
Definition: str_feat_dtk.hpp:7449
Dtk_feat_fillet::get_nb_objects_to_fillet
int get_nb_objects_to_fillet(int *)
Returns Fillet edge ribbon number
Dtk_feat_thickness_feat::defaultFaces
Dtk_tab< Dtk_feat_geometry * > defaultFaces
Definition: str_feat_dtk.hpp:5734
Dtk_feat_sheet_metal::shm_module_type
DTK_SHM_MODULE_TYPE shm_module_type
Definition: str_feat_dtk.hpp:6260
Dtk_feat::final_associated_geometry
Dtk_feat_geometry * final_associated_geometry
Definition: str_feat_dtk.hpp:6888
Dtk_feat_pattern::get_object_type
int get_object_type(DTK_OBJECT_TYPE *)
Returns object type
Dtk_feat_SpotPoint::Norm_A
@ Norm_A
Definition: str_feat_dtk.hpp:6671
Dtk_feat_shell::get_removed_faces
int get_removed_faces(Dtk_feat_shell_face ***)
Get the removed faces of the feature Shell.
Dtk_pipe_fiber_segment::~Dtk_pipe_fiber_segment
~Dtk_pipe_fiber_segment()
Dtk_feat_user_defined::type
Dtk_string type
Definition: str_feat_dtk.hpp:6160
Dtk_feat_loft_section
Loft Section.
Definition: str_feat_dtk.hpp:5379
Dtk_feat_chamfer::get_angle
int get_angle(double *a)
Returns Chamfer Angle
DTK_FEAT_COMP_STACKING
@ DTK_FEAT_COMP_STACKING
Definition: str_feat_dtk.hpp:386
Dtk_feat_draft::get_default_angle
int get_default_angle(double *)
Returns Draft default angle value applied in case of one side draft
Dtk_feat_pattern_dir::get_direction
int get_direction(Dtk_feat_axis **)
Returns the axis of direction for pattern feature.
Dtk_feat_draft::get_constant_draft
int get_constant_draft(Dtk_feat_draft_constant **)
Returns constant draft entity
Dtk_feat_inner_thread::IsNoStandardTable
Dtk_bool IsNoStandardTable() const
Definition: str_feat_dtk.hpp:1389
DTK_FEAT_SHM_FLANGED_CUTOUT
@ DTK_FEAT_SHM_FLANGED_CUTOUT
Definition: str_feat_dtk.hpp:468
Dtk_feat_close_surf::Dtk_feat_close_surf
Dtk_feat_close_surf()
Dtk_feat_thick_surf::first_offset
double first_offset
Definition: str_feat_dtk.hpp:2845
DTK_FEAT_SHELL
@ DTK_FEAT_SHELL
Definition: str_feat_dtk.hpp:305
Dtk_feat_prism::thickness
Dtk_feat_thickness * thickness
Definition: str_feat_dtk.hpp:876
Dtk_feat_inner_thread::get_right_threaded
int get_right_threaded(Bool *)
Tests whether the thread is rigth-threaded.
Dtk_feat_translate_coordinates::Dtk_feat_translate_coordinates
Dtk_feat_translate_coordinates()
Constructor of a coordinates translate Feature
Dtk_feat_SpotPoint::setLocation
void setLocation(const Dtk_pnt &p_location)
Set SpotPoint location.
Dtk_feat_SpotPoint::setFinish
void setFinish(Finish p_finish)
Set SpotPoint finish.
Dtk_feat::get_scaling
int get_scaling(Dtk_feat_scaling **e)
Returns feature's scaling feature
NO_DTK_BODY_TYPE
@ NO_DTK_BODY_TYPE
Definition: str_feat_dtk.hpp:74
Dtk_feat_translate::get_direction_translate
int get_direction_translate(Dtk_feat_translate_direction **)
Returns Direction translate entity
Dtk_feat_limit::GetType
LIMIT_TYPE GetType() const
Definition: str_feat_dtk.hpp:650
DTK_SWEEP_TYPE
DTK_SWEEP_TYPE
Definition: str_feat_dtk.hpp:63
DTK_SECTION_RADIUS_CORNER
@ DTK_SECTION_RADIUS_CORNER
Definition: str_feat_dtk.hpp:276
Dtk_feat_body::Dtk_feat_body
Dtk_feat_body()
Constructor of a body feature
Dtk_feat_draft_side::neutral_element
Dtk_feat_draft_neutral_element * neutral_element
Definition: str_feat_dtk.hpp:4576
Dtk_feat_mirror::get_nb_features
int get_nb_features(int *)
Returns the number of features resulted of the mirror feature.
Dtk_feat_draft_var_point::angle
double angle
Definition: str_feat_dtk.hpp:4627
Dtk_feat_tolerance_set
Definition: str_feat_dtk.hpp:843
Dtk_feat_loft_coupling::couplingPoints
Dtk_tab< Dtk_feat_geometry * > couplingPoints
Definition: str_feat_dtk.hpp:5465
Dtk_feat_draft::default_angle
double default_angle
Definition: str_feat_dtk.hpp:5035
Dtk_feat::dtk_feat_type::udf
Dtk_feat_udf * udf
Definition: str_feat_dtk.hpp:6911
Dtk_feat_face_fillet::get_face1
int get_face1(Dtk_feat_geometry **)
Returns First face element to Fillet.
Dtk_feat_inner_thread::get_diameter_with_tol
int get_diameter_with_tol(double *, double *, double *)
Returns the thread diameter with tolerance values if any.
Dtk_feat::GetAssociatedGeometry
Dtk_feat_geometry * GetAssociatedGeometry() const
Definition: str_feat_dtk.hpp:7059
DTK_FEAT_SURFACE
@ DTK_FEAT_SURFACE
Definition: str_feat_dtk.hpp:350
Dtk_feat_thick_surf::~Dtk_feat_thick_surf
~Dtk_feat_thick_surf()
Dtk_feat_hole::direction
Dtk_feat_geometry * direction
Definition: str_feat_dtk.hpp:1615
Dtk_feat_draft_side::get_angle
int get_angle(double *)
Returns Draft Side Angle
Dtk_feat_prism::normal_to_surface
Bool normal_to_surface
Definition: str_feat_dtk.hpp:874
Dtk_feat_revol::~Dtk_feat_revol
~Dtk_feat_revol()
Destructor of Revol Features.
Dtk_feat_SpotPoint::setRobustness
void setRobustness(Robustness p_robustness)
Set SpotPoint robustness.
Dtk_feat::GetSurfaceFeature
Dtk_feat_surf_feature * GetSurfaceFeature() const
Definition: str_feat_dtk.hpp:7436
Dtk_feat_hole::GetAnchorTypeAsString
Dtk_string GetAnchorTypeAsString() const
Dtk_feat_loft_section::sectionCurve
Dtk_feat_geometry * sectionCurve
Definition: str_feat_dtk.hpp:5385
Dtk_feat_thick_surf::get_surface
int get_surface(Dtk_feat_geometry **)
Returns the thickened surface element of the feature
Dtk_feat_draft_constant::selection
SELECTION_MODE selection
Definition: str_feat_dtk.hpp:4740
Dtk_chamfer_params
double Dtk_chamfer_params[3]
Definition: str_feat_dtk.hpp:856
Dtk_feat_thread::get_support_depth_has_tol
int get_support_depth_has_tol(Bool *)
Tests whether there is a tolerance set on support depth.
Dtk_feat_node::id
long id
Definition: str_feat_dtk.hpp:7505
Dtk_Entity
Definition: util_ent_dtk.hpp:371
DTK_FEAT_SHM_CORNER_RELIEF
@ DTK_FEAT_SHM_CORNER_RELIEF
Definition: str_feat_dtk.hpp:454
DTK_OBJECT_TYPE
DTK_OBJECT_TYPE
Definition: str_feat_dtk.hpp:154
Dtk_feat_inner_thread::~Dtk_feat_inner_thread
~Dtk_feat_inner_thread()
Destructor of Inner Thread Feature