3dtools.r.h
Go to the documentation of this file.
1 /*--------------------------------------------------------------------------------------+
2 |
3 | Supplied under applicable software license agreement.
4 |
5 | Copyright (c) 2018 Bentley Systems, Incorporated. All rights reserved.
6 |
7 +---------------------------------------------------------------------------------------*/
8 #pragma once
9 #include "smartsolid.r.h"
10 
12 typedef struct ms3dtoolsettings
13  {
16 
17  UInt32 axisMode:4;
18  UInt32 type:4; /* Not currently used */
19  UInt32 skewedMode:4;
20  UInt32 nonperiodic:1;
21  UInt32 makeCopy:1;
22  UInt32 keepOriginal:1;
23  UInt32 parametricSolid:1;
24  UInt32 reserved:16;
25 
27 
28  struct
29  {
30  UInt32 type:4;
31  UInt32 mode:4;
32  UInt32 planar:1; /* Not Currently Used */
33  UInt32 pointCurveStream:1; /* moved to msToolSettings */
34  UInt32 changeDirMode:1; /* used by CHANGE_DIRECTION command */
35  UInt32 curvatureDisplay:1;
36  UInt32 curvatureDisplayDensity:9;
37  UInt32 curvatureDisplayScale:10;
38  UInt32 changeDirMakeCopy:1; /* used by CHANGE_DIRECTION command */
41  } curve;
42 
43  struct
44  {
45  UInt32 polygon:1; // 1 means display polygon, 0 means hide.
46  UInt32 curve:1; // 0 means display curve, 1 means hide curve
47  UInt32 order:1;
48  UInt32 preserveShape:1;
49  UInt32 periodicity:1;
50  UInt32 reduceMakeCopy:1;
51  UInt32 curvature:1;
52 
53  UInt32 mode:2;
54  UInt32 poleNum:13;
55  UInt32 makeUniKnotsCopy:1;
56 
57  UInt32 reserved:9;
58  } changeCurve;
59 
60  struct
61  {
62  UInt32 polygon:1;
63  UInt32 curve:1;
64  UInt32 order:1;
65  UInt32 periodicity:1;
66  UInt32 closed:2;
67  UInt32 reserved:26;
68  } matchCurve;
69 
70  struct
71  {
72  UInt32 type:4;
73  UInt32 mode:3;
74  UInt32 reserved:25;
75  T_Adouble hyperbolaRho;
76  T_Adouble ellipseRho;
77  } conic;
78 
79  struct
80  {
81  UInt32 type:4;
82  UInt32 mode:4;
83  UInt32 input:1;
84  UInt32 reserved:23;
85  DegreeOfFreedom tolerance;
92  } spiral;
93 
94  struct
95  {
96  UInt32 direction:3;
97  UInt32 axisMode:4;
98  UInt32 skewed:1;
99  UInt32 planarSurfU:5;
100  UInt32 planarSurfV:5;
101  UInt32 planarSurfPolygon:1;
102  UInt32 reserved:13;
107  } helix;
108 
109  struct
110  {
111  UInt32 mode:3;
112  UInt32 direction:3;
113  UInt32 smooth:1;
114  UInt32 reserved:25;
116  } extractCurve;
117 
118  struct
119  {
120  UInt32 type:4; /* Not currently used */
121  UInt32 axisMode:4;
122  UInt32 skewed:1;
123  UInt32 surfHeightLocked:1;
124  UInt32 surfWidthLocked:1;
125  UInt32 surfLenthLocked:1;
126  UInt32 axisModeSurf:4;
127  UInt32 skewedSurf:1;
128  UInt32 spherePlaceMethod:2;
129  UInt32 pyramidSurfTopEdgeLengthLocked:1;
130  UInt32 pyramidSurfBaseEdgeLengthLocked:1;
131  UInt32 pyramidSolidTopEdgeLengthLocked:1;
132  UInt32 pyramidSolidBaseEdgeLengthLocked:1;
133  UInt32 pyramidSurfBaseLengthLocked:1;
134  UInt32 pyramidSurfBaseWidthLocked:1;
135  UInt32 pyramidSolidBaseLengthLocked:1;
136  UInt32 pyramidSolidBaseWidthLocked:1;
137  UInt32 pyramidSolidRectHeightLocked:1;
138  UInt32 pyramidSurfRectHeightLocked:1;
139  UInt32 reserved:3;
140  DegreeOfFreedom length;
142  DegreeOfFreedom height;
143  } block;
144 
145  struct
146  {
147  UInt32 axisMode:4;
148  UInt32 meshSplitMaxFaces:16;
149  UInt32 meshSplitMinParts:8;
150  UInt32 polyhedronRadiusTo:2;
151  UInt32 sphereRadiusOrDiameter:1;
152  UInt32 reserved:1;
154  } sphere;
155 
156  struct
157  {
158  UInt32 surfHeightLocked:1;
159  UInt32 surfRadiusLocked:1;
160  UInt32 axisModeSurf:4;
161  UInt32 skewedSurf:1;
162  UInt32 type:4; /* Not currently used */
163  UInt32 axisMode:4;
164  UInt32 skewed:1;
165  UInt32 domePlaceMethod:2;
166  UInt32 domeSurfRadiusLocked:1;
167  UInt32 domeSurfHeightLocked:1;
168  UInt32 domeSurfCutOffHeightLocked:1;
169  UInt32 domeSurfCutOffRadiusLocked:1;
170  UInt32 polyhedronFaceNum:3;
171  UInt32 reserved:7;
172  DegreeOfFreedom radius;
173  DegreeOfFreedom height;
174  } cylinder;
175 
176  struct
177  {
178  UInt32 coneSurfRight:1;
179  UInt32 coneRight:1;
180  UInt32 pyramidSolidSideNum:6;
181  UInt32 pyramidSurfSideNum:6;
182  UInt32 surfHeightLocked:1;
183  UInt32 surfTopRadiusLocked:1;
184  UInt32 surfBaseRadiusLocked:1;
185  UInt32 axisModeSurf:4;
186  UInt32 skewedSurf:1;
187  UInt32 type:4; /* Not currently used */
188  UInt32 axisMode:4;
189  UInt32 skewed:1;
190  UInt32 reserved:1;
191  DegreeOfFreedom baseRadius;
192  DegreeOfFreedom topRadius;
193  DegreeOfFreedom height;
194  } cone;
195 
196  struct
197  {
198  UInt32 pyramidSurfBaseMethod:2;
199  UInt32 pyramidSolidBaseMethod:2;
200  UInt32 surfAngleLocked:1;
201  UInt32 surfSecondaryRadiusLocked:1;
202  UInt32 surfPrimaryRadiusLocked:1;
203  UInt32 axisModeSurf:4;
204  UInt32 type:4; /* Not currently used */
205  UInt32 axisMode:4;
206  UInt32 polySolidPlaceBy:2;
207  UInt32 reserved:11;
210  DegreeOfFreedom angle;
211  } torus;
212 
213  struct
214  {
215  UInt32 surfFlat:1;
216  UInt32 flat:1;
217  UInt32 surfHeightLocked:1;
218  UInt32 surfAngleLocked:1;
219  UInt32 surfRadiusLocked:1;
220  UInt32 axisModeSurf:4;
221  UInt32 type:4; /* Not currently used */
222  UInt32 axisMode:4;
223  UInt32 pyramidSurfHeightlocked:1;
224  UInt32 pyramidHeightlocked:1;
225  UInt32 reserved:13;
226  DegreeOfFreedom radius;
227  DegreeOfFreedom angle;
228  DegreeOfFreedom height;
229  } wedge;
230 
231  struct
232  {
233  UInt32 type:4; /* Not currently used */
234  UInt32 mode:4;
235  UInt32 skewed:1;
236  UInt32 keepOriginal:1;
237  UInt32 bothWays:1;
238  UInt32 activeAttrib:1;
239  UInt32 solidSkewed:1;
240  UInt32 solidIsDist:1;
241  UInt32 solidIsSpin:1;
242  UInt32 solidIsDraft:1;
243  UInt32 solidIsXScale:1;
244  UInt32 solidIsYScale:1;
245  UInt32 solidBothWays:1;
246  UInt32 solidActiveAttib:1;
247  UInt32 solidKeepOriginal:1;
248  UInt32 surfaceCreateBspline:1;
249  UInt32 nonParametric:1;
250  UInt32 thicknessMode:2;
251  UInt32 reserved:7;
257  } extrude;
258 
259  struct
260  {
261  UInt32 type:4; /* Not currently used */
262  UInt32 mode:4;
263  UInt32 keepOriginal:1;
264  UInt32 activeAttrib:1;
265  UInt32 solidMode:4;
266  UInt32 solidKeepOriginal:1;
267  UInt32 solidActiveAttrib:1;
268  UInt32 solidAngleLock:1;
269  UInt32 surfaceCreateBspline:1;
270  UInt32 nonParametric:1;
271  UInt32 thicknessMode:2;
272  UInt32 reserved:11;
273  DegreeOfFreedom angle;
274  } revolve;
275 
276  struct
277  {
278  UInt32 type:4;
279  UInt32 mode:4;
280  UInt32 suppressBSurf:1;
281  UInt32 suppressBlend:1;
282  UInt32 disableCrossingEdge:1;
283  UInt32 keepOriginal:1;
284  UInt32 reserved:20;
287  BsplineDisplay display;
288  } surface;
289 
290  struct
291  {
292  UInt32 polygon:1;
293  UInt32 curve:1;
294  UInt32 rulesU:1;
295  UInt32 rulesV:1;
296  UInt32 orderU:1;
297  UInt32 orderV:1;
298  UInt32 preserveShape:1;
299  UInt32 periodicityU:1;
300  UInt32 periodicityV:1;
301  UInt32 normal:1;
302  UInt32 modifyLock:4;
303  UInt32 mode:2;
304  UInt32 reverseU:1;
305  UInt32 reverseV:1;
306  UInt32 swapUV:1;
307  UInt32 reserved:13;
308  } changeSurface;
309 
310  struct
311  {
312  UInt32 polygon:1;
313  UInt32 curve:1;
314  UInt32 rulesU:1;
315  UInt32 rulesV:1;
316  UInt32 orderU:1;
317  UInt32 orderV:1;
318  UInt32 periodicityU:1;
319  UInt32 periodicityV:1;
320  UInt32 reserved:24;
321  } matchSurface;
322 
323  struct
324  {
325  UInt32 type:4;
326  UInt32 mode:4;
327  UInt32 smooth:1;
329  UInt32 alignmentMode:4;
330  UInt32 closeInV:1;
331  UInt32 firstConstraint:3;
332  UInt32 lastConstraint:3;
333  UInt32 extendAdvOptions:1;
334  UInt32 unforceStartPoint:1;
335  UInt32 keepProfiles:1;
336  UInt32 segmentedLoft:1;
337  UInt32 isGuideLoft:1;
338  UInt32 nonParametric:1;
339  UInt32 reserved:5;
340  } section;
341 
342  struct
343  {
344  UInt32 type:4;
345  UInt32 mode:4;
346  UInt32 cuspTreatment:3;
347  UInt32 rigid:1;
348  UInt32 moveByPlaner_Mode:3; // Used as mode in "Move by Planer" tool
349  UInt32 moveByPlaner_makyCopy:1; // Used as makeCopy in "Move by Planer" tool
350  UInt32 reserved:16;
354  } tube;
355 
356  struct
357  {
358  UInt32 type:4; /* Not currently used */
359  UInt32 mode:4;
360  UInt32 skewed:1;
361  UInt32 reserved:23;
362  } skin;
363 
364  struct
365  {
366  UInt32 mode:4;
367 
368  UInt32 colorOverride:1; // Generate Section
369  UInt32 styleOverride:1; // Generate Section
370  UInt32 weightOverride:1; // Generate Section
371  UInt32 color:8; // Generate Section
372  UInt32 style:3; // Generate Section
373  UInt32 weight:5; // Generate Section
374 
375  UInt32 reserved:9;
376  DegreeOfFreedom tolerance;
377  } trim;
378 
379  struct
380  {
381  UInt32 mode:4;
382  UInt32 meshKeepContours:1;
383  UInt32 meshKeepXYPoints:1;
384  UInt32 meshContoursExpand:1;
385  UInt32 meshXYPointsExpand:1;
386  UInt32 meshProjectReverse2:3;
387  UInt32 meshProjectDirMode:3;
388  UInt32 meshGridCloseU:1;
389  UInt32 meshGridCloseV:1;
390  UInt32 meshHasContraints:1;
391  UInt32 meshFromPointsDirMode:3;
392  UInt32 reserved:12;
393  DegreeOfFreedom tolerance;
394  } booleanOp;
395 
396  struct
397  {
398  UInt32 type:4;
399  UInt32 mode:4;
400  UInt32 trim:2;
401  UInt32 reserved:22;
404  DegreeOfFreedom startRadius;
405  DegreeOfFreedom finalRadius;
406  DegreeOfFreedom tolerance;
407  } filletSurface;
408 
409  struct
410  {
411  UInt32 type:4;
412  UInt32 mode:4;
413  UInt32 trim:2;
414  UInt32 reserved:22;
415  DegreeOfFreedom radius1;
416  DegreeOfFreedom radius2;
417  } filletCurve;
418 
419  struct
420  {
421  UInt32 continuity:6;
422  UInt32 dropMakeCopy:1;
423  UInt32 dropExtractBound:1;
424  UInt32 dropMethod:3;
425  UInt32 dropType:3;
426  UInt32 reserved:18;
427  T_Adouble factor1;
428  T_Adouble factor2;
429  } blendCurve;
430 
431  struct
432  {
433  UInt32 continuity:6;
434  UInt32 continuity1:6;
435  UInt32 dropNumURules:6;
436  UInt32 dropNumVRules:6;
437  UInt32 reverseDirection1:2;
438  UInt32 reverseDirection2:2;
439  UInt32 dynamicSelect:1;
440  UInt32 reserved:3;
441  T_Adouble factor1;
442  T_Adouble factor2;
443  } blendSurface;
444 
445  struct
446  {
447  UInt32 continuity:6;
448  UInt32 dropNumPoints:20;
449  UInt32 trimBlendType:2;
450  UInt32 trimWallType:2;
451  UInt32 keepOriginal:1;
452  UInt32 reserved:1;
453  DegreeOfFreedom tolerance;
454  } rails;
455 
456  struct
457  {
458  UInt32 effect:4;
459  UInt32 direction:4;
460  UInt32 capped:1;
461  UInt32 capMode:4;
462  UInt32 skewed:1;
463  UInt32 reserved:18;
465  DegreeOfFreedom distance;
466  DegreeOfFreedom tolerance;
467  } punch;
468 
469  struct
470  {
471  UInt32 direction:3;
472  UInt32 nohole:1;
473  UInt32 cutDir:2;
474  UInt32 reserved:26;
475  DegreeOfFreedom tolerance;
476  } impose;
477 
478  struct
479  {
480  DegreeOfFreedom tolerance;
481  } reduce;
482 
483  struct
484  {
485  UInt32 order:16;
486  UInt32 type:2;
487  UInt32 method:4;
488  UInt32 reserved:10;
489  T_Adouble scale;
490  } extendCurve;
491 
492 
493  struct
494  {
496  T_Adouble scale;
497  } extendSurface;
498 
499  struct
500  {
501  UInt32 mode:4;
502 
503  UInt32 type:2; // Generate Section
504  UInt32 infinite:1; // Generate Section
505  UInt32 extended:1; // Generate Section
506  UInt32 outputType:1; // Generate Section
507  UInt32 outputEnabled:1; // Generate Section
508  UInt32 assembleSeg:1; // Generate Section
509  UInt32 interactivePositioning:1; // Generate Section
510  UInt32 flattenSection:1; // Generate Section
511  UInt32 applyActiveScaleAndAngle:1; // Generate Section
512  UInt32 rotateToView:1; // Generate Section
513  UInt32 useActiveSymbology:1;
514 
515  UInt32 reserved:16;
516  } deleteBound;
517 
518  struct
519  {
520  UInt32 mode:4;
521  UInt32 shape:3;
522 
523  UInt32 keepOriginalSolid:1; // Convert to Solid
524  UInt32 convertToSolid:1;
525  UInt32 keepOriginalSurface:1;
526  UInt32 convertToSurface:2; // Convert to Surface
527  UInt32 mergeInToSingleSurface:1; // Try to merge surfaces into single surface
528  UInt32 keepOriginalCurve:1;
529 
530  UInt32 reserved:18;
531  DegreeOfFreedom tolerance;
532  } convert;
533 
534  struct
535  {
536  UInt32 mode:4; /* used by OPTIONBUTTONID_CurveFilletMode */
537  UInt32 reserved:28; /* used by TOGGLEID_CurveFilletChain */
538  DegreeOfFreedom tolerance;
539  } changeCap;
540 
541  struct
542  {
543  UInt32 type:4;
544  UInt32 mode:4;
545  UInt32 trim:2;
546  UInt32 reserved:22;
549  DegreeOfFreedom tolerance;
550  } chamfer;
551 
552  struct
553  {
554  UInt32 cuspTreatment:3;
555  UInt32 activeSymb:1;
556  UInt32 makeCopy:1;
557  UInt32 numCopy:15;
558  UInt32 partial:1;
559  UInt32 resultType:2;
560  UInt32 partialCurve:1;
561  UInt32 segment:2;
562  UInt32 reserved:6;
563  DegreeOfFreedom tolerance;
564  DegreeOfFreedom distance;
565  } offsetCurve;
566 
567  struct
568  {
569  UInt32 makeCopy:1;
570  UInt32 reserved:31;
571  DegreeOfFreedom tolerance;
572  DegreeOfFreedom distance;
573  } offsetSurface;
574 
575  struct
576  {
577  UInt32 axisMode:4;
578  UInt32 method:2;
579  UInt32 helixType:2;
580  UInt32 pitchType:3;
581  UInt32 reserved:21;
582  DegreeOfFreedom baseRadius;
583  DegreeOfFreedom topRadius;
584  DegreeOfFreedom height;
585  DegreeOfFreedom pitch;
586  } helicalSolid;
587 
588  struct
589  {
590  UInt32 axisMode:6;
591  UInt32 keepOriginal:1;
592  UInt32 reserved:25;
593  } flattenCurve;
594 
595  struct
596  {
597  UInt32 tangentControl:3;
598  UInt32 maintainTangents:2;
599  UInt32 passEnd:2;
600  UInt32 advanced:2;
601  UInt32 keepOriginal:1;
602  UInt32 unused:22;
603  T_Adouble tolerance;
606  } placeCurve;
607 
608  struct
609  {
610  UInt32 helixType:5;
611  UInt32 pitchType:5;
612  UInt32 unused:22;
613  T_Adouble tolerance;
614  } helixCurve;
615 
616  struct
617  {
618  UInt32 maintainTangent:1;
619  UInt32 maintainSharp:1;
620  UInt32 makeCopy:1;
621  UInt32 type:4;
622  UInt32 order:13; //Used for edit curve degree
623  UInt32 unused:12;
624  DegreeOfFreedom tolerance;
625  } sweetenCurve;
626 
627  struct
628  {
629  UInt32 makeCopy:1;
630  UInt32 type:4;
631  UInt32 uNumPoles:13;
632  UInt32 vNumPoles:13;
633  UInt32 unused:1;
634  T_Adouble tolerance;
635  } sweetenSurface;
636 
637  struct
638  {
639  UInt32 makeCopy:1;
640  UInt32 uNumRuleLines:13;
641  UInt32 vNumRuleLines:13;
642  UInt32 unused:5;
643  T_Adouble tolerance;
644  } reduceSurface;
645 
646  struct
647  {
648  UInt32 outputMode:2;
649  UInt32 inputMode:3;
650  UInt32 showPoints:1;
651  UInt32 showTangents:1;
652  UInt32 showRadius:1;
653  UInt32 showInflection:1;
654  UInt32 showPlane:1;
655  UInt32 showCusps:1;
656  UInt32 unused:21;
658  T_Adouble parameter;
659  T_Adouble distAlong;
660  T_Adouble curvatureScale;
661  T_Adouble tangentScale;
662  T_Adouble radius;
663  } curveEvaluator;
664 
665  struct
666  {
667  UInt32 outputMode:2;
668  UInt32 inputMode:3;
669  UInt32 showPoints:1;
670  UInt32 showTangents:1;
671  UInt32 showNormal:1;
672  UInt32 showPorcupine:1;
673  UInt32 numUSample:8;
674  UInt32 numVSample:8;
675  UInt32 unused:7;
678  T_Adouble distUAlong;
679  T_Adouble distVAlong;
680  T_Adouble uParam;
681  T_Adouble vParam;
682  T_Adouble normalScale;
683  T_Adouble tangentScale;
684  } surfaceEvaluator;
685 
686  struct
687  {
688  UInt32 trimMode:4;
689  UInt32 autoChain:1;
690  UInt32 meshBoolean2ndAsTrimmer:1;
691  UInt32 meshBooleanType:5; /* used before v8.11 */
692  UInt32 meshCreateType:5; /* used before v8.11 */
693  UInt32 meshModifyType:5; /* used before v8.11 */
694  UInt32 meshMergeFacetsMode:2;
695  UInt32 meshSplitKeepOriginal:1;
696  UInt32 meshUnfoldKeepOriginal:1;
697  UInt32 meshSplitMode:3;
698  UInt32 meshMergeCoplanarFaces:1;
699  UInt32 meshMergeCoplanarEdges:1;
700  UInt32 meshMergeSmallEdges:1;
701  UInt32 unused:1;
702  } trimCurve;
703 
704  struct
705  {
706  UInt32 autoChain:1;
707  UInt32 changeBoth:2;
708  UInt32 joinMode:4;
709  UInt32 unused:25;
710  } joinCurve;
711 
712  struct
713  {
714  UInt32 extractMode:2;
715  UInt32 extractBound:1;
716  UInt32 makeCopy:1;
717  UInt32 unused:28;
720  } extractCurveNew;
721 
722  struct
723  {
724  UInt32 type:2;
725  UInt32 meshToSurfKeepOrigial : 1; //used by mesh to surface tool
726  UInt32 restoreHidingEdges:2;
727  UInt32 unused:27;
728  } edgeSurface;
729 
730  struct
731  {
732  UInt32 mode:2;
733  UInt32 order:4;
734  UInt32 allowSelectAgain:1;
735  UInt32 closed:1;
736  UInt32 unused:24;
737  } vectorInterpolation;
738 
739  struct
740  {
741  T_Adouble xScale;
742  T_Adouble yScale;
743  T_Adouble spin;
744  T_Adouble tolerance;
745  } rigidSweep;
746 
747  struct
748  {
749  UInt32 mode:6;
750  UInt32 scale:1;
751  UInt32 scaleHeight:1;
752  UInt32 keepTrace:1;
753  UInt32 keepSection:1;
754  UInt32 alignment:2;
755  UInt32 firstConstraint:3; //used by vertexloft
756  UInt32 lastConstraint:3; //used by vertexloft
757  UInt32 keepCurves:1; //used by developablemeshfromcurves
758  UInt32 selfRepair:1;
759  UInt32 unused:12;
760  } twoTraceSweep;
761 
762  struct
763  {
764  DegreeOfFreedom tolerance; /* used by section */
765  DegreeOfFreedom distance; /* used by drop's chordTol and makeCopy */
766  } obsoleteOffsetCurve;
767 
768  struct
769  {
770  DegreeOfFreedom tolerance;
771  DegreeOfFreedom distance; /* used by TEXTID_CurveFilletRadius */
772  } obsoleteOffsetSurface;
773 
774  /*-------------------------------------------------------------------
775  The reserved section can be used to add bitfields and values.
776  Make sure the size of the structure is not changed.
777  -------------------------------------------------------------------*/
778 
779  struct
780  {
781  UInt32 maxSides:10;
782  UInt32 keepOriginal:1;
783  UInt32 outputMode:3;
784  UInt32 lockChordTol:1;
785  UInt32 lockAngleTol:1;
786  UInt32 lockMaxEdgeLength:1;
787  UInt32 lockMaxSides:1;
788  UInt32 decimateFixBnd:1;
789  UInt32 subtractSplit:1;
790  UInt32 trimMode:3;
791  UInt32 trimKeepOriginal:1;
792  UInt32 uniteKeepOriginals:2;
793  UInt32 boolReverse1:1;
794  UInt32 boolReverse2:1;
795  UInt32 intersectKeepOriginals:2;
796  UInt32 subtractKeepOriginals:2;
797  T_Adouble maxEdgeLength;
798  T_Adouble chordTol;
799  T_Adouble angleTol;
800  } facet;
801 
808 
809  /* added for block surface */
810  T_Adouble blockSurfLength;
811  T_Adouble blockSurfWidth;
812  T_Adouble blockSurfHeight;
813 
814  /* added for Cylinder surface */
817 
818  /* added for cone surface */
820  T_Adouble coneSurfTopRadius;
821  T_Adouble coneSurfHeight;
822 
823  /* added for torus surface */
826  T_Adouble torusSurfAngle;
827 
828  /* added for wedge surface */
829  T_Adouble wedgeSurfRadius;
830  T_Adouble wedgeSurfAngle;
831  T_Adouble wedgeSurfHeight;
832 
834 
835  /* added for extrude along path */
836  T_Adouble tubeSurfScale;
837  T_Adouble tubeSurfTwist;
838  T_Adouble tubeSurfRad;
839  T_Adouble tubeSolidScale;
840  T_Adouble tubeSolidTwist;
843 
844  /* added for extrude */
850 
851  /* added for revole */
852  T_Adouble revoleSolidAngle;
853 
854  /* added for squish */
855  T_Adouble squishFlattenGrid;
856 
857  /* added for meshtosurface */
858  T_Adouble meshToSurfTol;
859 
860  /* added for polysolid */
861  T_Adouble polySolidWidth;
862  T_Adouble polySolidHeight;
863 
864  /*......added for hide mesh edges*/
866 
867  T_Adouble extrudeThickness;
868  T_Adouble revolveThickness;
869 
870  T_Adouble reservedForFuture[6]; /* for future V0 settings */
871 
873 
T_Adouble facetDecimateChordTol
Definition: 3dtools.r.h:807
T_Adouble extrudeSolidSpinAng
Definition: 3dtools.r.h:846
T_Adouble polySolidWidth
Definition: 3dtools.r.h:861
DegreeOfFreedom insideRadius
Definition: 3dtools.r.h:351
T_Adouble curveEvaluatordistAlongAbs
Definition: 3dtools.r.h:806
T_Adouble torusSurfSecondaryRadius
Definition: 3dtools.r.h:825
T_Adouble xScale
Definition: 3dtools.r.h:741
BsplineDisplay display
Definition: 3dtools.r.h:40
#define END_BENTLEY_DGNPLATFORM_NAMESPACE
Definition: DgnPlatformBaseType.r.h:69
T_Adouble radius
Definition: 3dtools.r.h:662
T_Adouble meshToSurfTol
Definition: 3dtools.r.h:858
T_Adouble extrudeSolidXScale
Definition: 3dtools.r.h:848
DegreeOfFreedom fitLength
Definition: 3dtools.r.h:604
T_Adouble tubeSurfScale
Definition: 3dtools.r.h:836
Spline order, closure, and count data.
Definition: BsplineStructs.h:96
T_Adouble hyperbolaRho
Definition: 3dtools.r.h:75
DegreeOfFreedom length
Definition: 3dtools.r.h:91
Definition: 3dtools.r.h:12
BsplineParam vParams
Definition: 3dtools.r.h:286
T_Adouble cylinderSurfHeight
Definition: 3dtools.r.h:816
struct Bentley::DgnPlatform::ms3dtoolsettings MS3DToolSettings
DegreeOfFreedom width
Definition: 3dtools.r.h:141
DegreeOfFreedom radius
Definition: 3dtools.r.h:153
Int32 uNum
Definition: 3dtools.r.h:718
DegreeOfFreedom startDegree
Definition: 3dtools.r.h:86
T_Adouble wedgeSurfRadius
Definition: 3dtools.r.h:829
DegreeOfFreedom xScale
Definition: 3dtools.r.h:255
SmartSolidSettings smartSolid
Definition: 3dtools.r.h:802
DegreeOfFreedom distance2
Definition: 3dtools.r.h:548
T_Adouble normalScale
Definition: 3dtools.r.h:682
DegreeOfFreedom pitch
Definition: 3dtools.r.h:106
iterator end()
Definition: stdcxx/bstdmap.h:186
T_Adouble tubeSolidTwist
Definition: 3dtools.r.h:840
Int32 dCount
Definition: 3dtools.r.h:14
DegreeOfFreedom range
Definition: 3dtools.r.h:464
T_Adouble distUAlong
Definition: 3dtools.r.h:678
DegreeOfFreedom yScale
Definition: 3dtools.r.h:256
DegreeOfFreedom param
Definition: 3dtools.r.h:115
T_Adouble distVAlong
Definition: 3dtools.r.h:679
DegreeOfFreedom topRadius
Definition: 3dtools.r.h:104
DegreeOfFreedom angle
Definition: 3dtools.r.h:90
Int32 vNum
Definition: 3dtools.r.h:719
uint32_t UInt32
Definition: Bentley.r.h:128
T_Adouble torusSurfPrimaryRadius
Definition: 3dtools.r.h:824
DegreeOfFreedom radius2
Definition: 3dtools.r.h:403
T_Adouble revolveThickness
Definition: 3dtools.r.h:868
Int32 order
Definition: 3dtools.r.h:495
T_Adouble tangentScale
Definition: 3dtools.r.h:661
DegreeOfFreedom finalDegree
Definition: 3dtools.r.h:87
T_Adouble curvatureScale
Definition: 3dtools.r.h:660
T_Adouble tubeSolidRadInside
Definition: 3dtools.r.h:841
T_Adouble tubeSurfTwist
Definition: 3dtools.r.h:837
DegreeOfFreedom outsideRadius
Definition: 3dtools.r.h:352
T_Adouble torusSurfAngle
Definition: 3dtools.r.h:826
T_Adouble parameter
Definition: 3dtools.r.h:658
Int32 orientationView
Definition: 3dtools.r.h:15
T_Adouble chordTol
Definition: 3dtools.r.h:798
T_Adouble blockSurfHeight
Definition: 3dtools.r.h:812
T_Adouble tubeSolidRadOutside
Definition: 3dtools.r.h:842
T_Adouble extrudeThickness
Definition: 3dtools.r.h:867
DegreeOfFreedom secondaryRadius
Definition: 3dtools.r.h:209
int32_t Int32
Definition: Bentley.r.h:119
DegreeOfFreedom radius1
Definition: 3dtools.r.h:402
BsplineParam uParams
Definition: 3dtools.r.h:285
T_Adouble facetSmallEdgeLength
Definition: 3dtools.r.h:805
DegreeOfFreedom baseRadius
Definition: 3dtools.r.h:103
DegreeOfFreedom startRadius
Definition: 3dtools.r.h:88
DegreeOfFreedom primaryRadius
Definition: 3dtools.r.h:208
DegreeOfFreedom fitAngle
Definition: 3dtools.r.h:605
T_Adouble facetTrimTolerance
Definition: 3dtools.r.h:804
T_Adouble hideMeshEdgesAngle
Definition: 3dtools.r.h:865
DegreeOfFreedom spinAngle
Definition: 3dtools.r.h:253
T_Adouble ellipseRho
Definition: 3dtools.r.h:76
T_Adouble coneSurfTopRadius
Definition: 3dtools.r.h:820
T_Adouble coneSurfHeight
Definition: 3dtools.r.h:821
T_Adouble wedgeSurfHeight
Definition: 3dtools.r.h:831
T_Adouble wedgeSurfAngle
Definition: 3dtools.r.h:830
T_Adouble uParam
Definition: 3dtools.r.h:680
T_Adouble blockSurfLength
Definition: 3dtools.r.h:810
Int32 numVPoints
Definition: 3dtools.r.h:677
#define BEGIN_BENTLEY_DGNPLATFORM_NAMESPACE
Definition: DgnPlatformBaseType.r.h:68
DegreeOfFreedom tolerance
Definition: 3dtools.r.h:26
T_Adouble offsetSurfaceDistance
Definition: 3dtools.r.h:833
T_Adouble distAlong
Definition: 3dtools.r.h:659
T_Adouble tubeSolidScale
Definition: 3dtools.r.h:839
T_Adouble facetDecimatePercent
Definition: 3dtools.r.h:803
T_Adouble maxEdgeLength
Definition: 3dtools.r.h:797
T_Adouble extrudeSolidDraftAng
Definition: 3dtools.r.h:847
T_Adouble extrudeSolidDistance
Definition: 3dtools.r.h:845
T_Adouble tubeSurfRad
Definition: 3dtools.r.h:838
T_Adouble cylinderSurfRadius
Definition: 3dtools.r.h:815
T_Adouble scale
Definition: 3dtools.r.h:489
T_Adouble angleTol
Definition: 3dtools.r.h:799
T_Adouble factor2
Definition: 3dtools.r.h:428
Int32 numPoints
Definition: 3dtools.r.h:657
T_Adouble squishFlattenGrid
Definition: 3dtools.r.h:855
DegreeOfFreedom distance
Definition: 3dtools.r.h:252
T_Adouble blockSurfWidth
Definition: 3dtools.r.h:811
BsplineParam params
Definition: 3dtools.r.h:39
T_Adouble yScale
Definition: 3dtools.r.h:742
Definition: smartsolid.r.h:10
An entry in a double linked list of (parameteric intervals of) curves.
Definition: MSBsplineSurface.h:15
T_Adouble spin
Definition: 3dtools.r.h:743
Int32 numUPoints
Definition: 3dtools.r.h:676
T_Adouble coneSurfBaseRadius
Definition: 3dtools.r.h:819
DegreeOfFreedom finalRadius
Definition: 3dtools.r.h:89
Definition: DgnPlatform.r.h:550
DegreeOfFreedom distance1
Definition: 3dtools.r.h:547
T_Adouble revoleSolidAngle
Definition: 3dtools.r.h:852
T_Adouble extrudeSolidYScale
Definition: 3dtools.r.h:849
T_Adouble polySolidHeight
Definition: 3dtools.r.h:862
DegreeOfFreedom cuspRadius
Definition: 3dtools.r.h:353
T_Adouble tolerance
Definition: 3dtools.r.h:603
T_Adouble vParam
Definition: 3dtools.r.h:681
DegreeOfFreedom height
Definition: 3dtools.r.h:105
spline display controls
Definition: BsplineStructs.h:139
T_Adouble factor1
Definition: 3dtools.r.h:427
DegreeOfFreedom draftAngle
Definition: 3dtools.r.h:254

Copyright © 2017 Bentley Systems, Incorporated. All rights reserved.