HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
HOM_GeometryViewportSettings.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * COMMENTS:
7  */
8 
9 #ifndef __HOM_GeometryViewportSettings_h__
10 #define __HOM_GeometryViewportSettings_h__
11 
12 #include "HOM_API.h"
13 #include "HOM_Color.h"
14 #include "HOM_Defines.h"
15 #include "HOM_Errors.h"
18 #include "HOM_Module.h"
19 #include "HOM_ObjNode.h"
20 #include "HOM_EnumValue.h"
21 
22 SWIGOUT(%rename(GeometryViewportSettings) HOM_GeometryViewportSettings;)
23 
25 {
26 public:
28  { HOM_CONSTRUCT_OBJECT(this) }
30  { HOM_CONSTRUCT_OBJECT(this) }
32  { HOM_DESTRUCT_OBJECT(this) }
33 
34  virtual std::string __repr__() = 0;
35 
36  virtual HOM_EnumValue &viewportType() = 0;
37 
38  // Markers tab -------------------------------------------------------
39 
40  SWIGOUT(%newobject displaySet;)
41  virtual HOM_GeometryViewportDisplaySet *displaySet(HOM_EnumValue &settype) = 0;
42 
43  virtual float viewAspectRatio(bool masked = true) = 0;
44  virtual double normalScale() = 0;
45  virtual void setNormalScale(double normal_scale) = 0;
46  virtual double vectorScale() = 0;
47  virtual void setVectorScale(double vec_scale) = 0;
48  virtual double pointMarkerSize() = 0;
49  virtual void setPointMarkerSize(double psize) = 0;
50  virtual double originGnomonSize()= 0;
51  virtual void setOriginGnomonSize(double size) = 0;
52 
53  SWIGOUT(%newobject camera;)
54  virtual HOM_ObjNode *camera() = 0;
55  virtual void setCamera(HOM_ObjNode &camera_node) = 0;
56  virtual void saveViewToCamera(HOM_ObjNode &camera_node) = 0;
57 
58  virtual void geometryInfo(HOM_EnumValue &info) = 0;
59  virtual HOM_EnumValue &geometryInfo() = 0;
60 
61  virtual void handleHighlight(HOM_EnumValue &info) = 0;
62  virtual HOM_EnumValue &handleHighlight() = 0;
63 
64  virtual void closureSelection(HOM_EnumValue &info) = 0;
65  virtual HOM_EnumValue &closureSelection() = 0;
66 
67  virtual void guideFontSize(HOM_EnumValue &info) = 0;
68  virtual HOM_EnumValue &guideFontSize() = 0;
69 
70  // guide enum = viewportGuide
71  virtual void enableGuide(HOM_EnumValue &guide, bool enabled) = 0;
72  virtual bool guideEnabled(HOM_EnumValue &guide) = 0;
73 
74  // Geometry tab -----------------------------------------------------
75 
76  virtual void levelOfDetail(double value) = 0;
77  virtual double levelOfDetail() = 0;
78 
79  // HOM_ViewportVolumeQuality
80  virtual void volumeQuality(HOM_EnumValue &quality) = 0;
81  virtual HOM_EnumValue &volumeQuality() = 0;
82 
83  virtual void volumeWireAsPoints(bool as_points) = 0;
84  virtual bool volumeWireAsPoints() = 0;
85 
86  virtual void polygonConvexQuality(bool quality) = 0;
87  virtual bool polygonConvexQuality() = 0;
88 
89  virtual void subdivsionLimit(int limit_in_millions) = 0;
90  virtual int subdivsionLimit() = 0;
91 
92  virtual void wireWidth(double width) = 0;
93  virtual double wireWidth() = 0;
94 
95  virtual void wireBlend(double blend) = 0;
96  virtual double wireBlend() = 0;
97 
98  virtual void interiorWireAlpha(double alpha) = 0;
99  virtual double interiorWireAlpha() = 0;
100 
101  virtual void shadeOpenCurves(bool shade) = 0;
102  virtual bool shadeOpenCurves() = 0;
103 
104  virtual void selectWireframeAsSolid(bool as_solid) = 0;
105  virtual bool selectWireframeAsSolid() = 0;
106 
107 
108  // HOM_ViewportParticleDisplay
109  virtual void particleDisplayType(HOM_EnumValue &quality) = 0;
110  virtual HOM_EnumValue &particleDisplayType() = 0;
111 
112  virtual void allowParticleSprites(bool sprites) = 0;
113  virtual bool allowParticleSprites() = 0;
114 
115  virtual void particlePointSize(double size) = 0;
116  virtual double particlePointSize() = 0;
117 
118  virtual void particleDiscSize(double size) = 0;
119  virtual double particleDiscSize() = 0;
120 
121  virtual void orientDiscToNormal(bool n_orient) = 0;
122  virtual bool orientDiscToNormal() = 0;
123 
124  virtual void spriteTextureLimit(std::vector<int> &max_res)
125  = 0;
126  virtual std::vector<int> spriteTextureLimit() = 0;
127 
128 
129  virtual void pointInstancing(bool enable) = 0;
130  virtual bool pointInstancing() = 0;
131 
132  virtual void pointInstancingPercent(double show_instances) = 0;
133  virtual double pointInstancingPercent() = 0;
134 
135  virtual void pointInstancingLimit(int millions_of_instances) = 0;
136  virtual int pointInstancingLimit() = 0;
137 
138  // HOM_ViewportStandInGeometry
139  virtual void instanceStandInGeometry(HOM_EnumValue &standin) = 0;
140  virtual HOM_EnumValue &instanceStandInGeometry() = 0;
141 
142  virtual void autoGenerateVertexNormals(bool vertex) = 0;
143  virtual bool autoGenerateVertexNormals() = 0;
144 
145  virtual void vertexNormalCuspAngle(double angle) = 0;
146  virtual double vertexNormalCuspAngle() = 0;
147 
148  virtual void vertexNormalLimit(int millions_of_polys) = 0;
149  virtual int vertexNormalLimit() = 0;
150 
151  // Scene tab -------------------------------------------------------
152 
153  virtual void setSceneAntialias(int aa) = 0;
154  virtual int sceneAntialias() = 0;
155 
156  virtual void setHdrRendering(bool hdr) = 0;
157  virtual bool hdrRendering() = 0;
158 
159  virtual void setXrayDrawing(bool global_enable) = 0;
160  virtual bool xrayDrawing() = 0;
161 
162  virtual void setXrayQuality(bool quality) = 0;
163  virtual bool xrayQuality() = 0;
164 
165  virtual void setXrayStrength(double strength) = 0;
166  virtual double xrayStrength() = 0;
167 
168  virtual void setObjectOrigins(bool globel_enable) = 0;
169  virtual bool objectOrigins() = 0;
170 
171  virtual void setOnionSkinning(bool global_enable) = 0;
172  virtual bool onionSkinning() = 0;
173 
174  virtual void setOnionSkinFramesBeforeCount(int num_frames) = 0;
175  virtual int onionSkinFramesBeforeCount() = 0;
176 
177  virtual void setOnionSkinFramesBeforeTint(HOM_Color &tint) = 0;
178  virtual HOM_Color onionSkinFramesBeforeTint() = 0;
179 
180  virtual void setOnionSkinFramesAfterCount(int num_frames) = 0;
181  virtual int onionSkinFramesAfterCount() = 0;
182 
183  virtual void setOnionSkinFramesAfterTint(HOM_Color &tint) = 0;
184  virtual HOM_Color onionSkinFramesAfterTint() = 0;
185 
186  virtual void setOnionSkinFrameIncrement(int frame_increment) = 0;
187  virtual int onionSkinFrameIncrement() = 0;
188 
189  virtual void setOnionSkinOpacity(double opacity) = 0;
190  virtual double onionSkinOpacity() = 0;
191 
192  virtual void setSceneGamma(double gamma) = 0;
193  virtual double sceneGamma() = 0;
194 
195  virtual void setUseSceneLUT(bool enable) = 0;
196  virtual bool useSceneLUT() = 0;
197 
198  virtual void setSceneLUT(std::string lut_file) = 0;
199  virtual std::string sceneLUT() = 0;
200 
201  virtual void setBackgroundImageGammaLUT(bool apply_to_bg) = 0;
202  virtual bool backgroundImageGammaLUT() = 0;
203 
204  // Viewport tab ----------------------------------------------------
205 
206  virtual void showsName(bool show) = 0;
207  virtual bool showName() = 0;
208 
209  virtual void showsCameraName(bool show) = 0;
210  virtual bool showCameraName() = 0;
211 
212  virtual void showsStateStatus(bool show) = 0;
213  virtual bool showStateStatus() = 0;
214 
215  virtual void useAspectRatio(bool enable) = 0;
216  virtual bool usingAspectRatio() = 0;
217 
218  virtual void setAspectRatio(double aspect) = 0;
219  virtual double aspectRatio() = 0;
220 
221  virtual void setViewMaskOpacity(double opacity) = 0;
222  virtual double viewMaskOpacity() = 0;
223 
224  virtual void setStereoMode(HOM_EnumValue &viewportStereoMode) = 0;
225  virtual HOM_EnumValue stereoMode() = 0;
226 
227  virtual void setHomeAutoAdjustsClip(HOM_EnumValue &viewportHomeClipMode)= 0;
228  virtual HOM_EnumValue homeAutoAdjustClip() = 0;
229 
230  virtual void setClipPlanes(std::vector<double> clip) = 0;
231  virtual std::vector<double> clipPlanes() = 0;
232 
233  virtual void setMinHomeSize(double min_size) = 0;
234  virtual double minHomeSize() = 0;
235 
236  virtual void setUVDisplayAttribute(const std::string &uv) = 0;
237  virtual std::string uvDisplayAttribute() = 0;
238 
239  virtual void setUVAutoAttribute(bool detect) = 0;
240  virtual bool uvAutoAttribute() = 0;
241 
242  virtual void setUVVertexType(bool is_vertex_uv) = 0;
243  virtual bool uvVertexType() = 0;
244 
245  // Effects tab -----------------------------------------------------
246 
247  virtual void setLighting(HOM_EnumValue &viewportLighting) = 0;
248  virtual HOM_EnumValue &lighting() = 0;
249 
250  virtual void showDiffuse(bool enable) = 0;
251  virtual bool showingDiffuse() = 0;
252 
253  virtual void showSpecular(bool enable) = 0;
254  virtual bool showingSpecular() = 0;
255 
256  virtual void showAmbient(bool enable) = 0;
257  virtual bool showingAmbient() = 0;
258 
259  virtual void showEmission(bool enable) = 0;
260  virtual bool showingEmission() = 0;
261 
262  virtual void setLightSampling(int num_samples) = 0;
263  virtual int lightSampling() = 0;
264 
265  virtual void setHeadlightIntensity(double intensity) = 0;
266  virtual double headlightIntensity() = 0;
267 
268  virtual void setHeadlightDirection(std::vector<double> dir) = 0;
269  virtual std::vector<double> headlightDirection() = 0;
270 
271  virtual void setHeadlightSpecular(bool enable) = 0;
272  virtual bool headlightSpecular() = 0;
273 
274  virtual void showMaterials(bool enable) = 0;
275  virtual bool showingMaterials() = 0;
276 
277  virtual void showGeometryColor(bool enable) = 0;
278  virtual bool showingGeometryColor() = 0;
279 
280  virtual void useTransparency(bool enable) = 0;
281  virtual bool usingTransparency() = 0;
282 
283  virtual void setTransparencyQuality(HOM_EnumValue &viewportTransparency) = 0;
284  virtual HOM_EnumValue transparencyQuality() = 0;
285 
286  virtual void useDisplacement(bool enable) = 0;
287  virtual bool usingDisplacement() = 0;
288 
289  virtual void setDisplacementLevel(double level) = 0;
290  virtual double displacementLevel() = 0;
291 
292  virtual void setDefaultMaterialDiffuse(HOM_Color &tint) = 0;
293  virtual HOM_Color defaultMaterialDiffuse() = 0;
294 
295  virtual void setDefaultMaterialSpecular(HOM_Color &tint) = 0;
296  virtual HOM_Color defaultMaterialSpecular() = 0;
297 
298  virtual void setDefaultMaterialAmbient(HOM_Color &tint) = 0;
299  virtual HOM_Color defaultMaterialAmbient() = 0;
300 
301  virtual void setDefaultMaterialEmission(HOM_Color &tint) = 0;
302  virtual HOM_Color defaultMaterialEmission() = 0;
303 
304 
305  virtual void setAmbientOcclusion(bool enable) = 0;
306  virtual bool ambientOcclusion() = 0;
307 
308  virtual void setAmbientOcclusionLevel(int level) = 0;
309  virtual int ambientOcclusionLevel() = 0;
310 
311  virtual void setShadowQuality(HOM_EnumValue &viewportShadowQuality) = 0;
312  virtual HOM_EnumValue shadowQuality() = 0;
313 
314  virtual void setShadowSensitivity(std::vector<int> offset) = 0;
315  virtual std::vector<int> shadowSensitivity() = 0;
316 
317  virtual void setShadowMapSize(int size) = 0;
318  virtual int shadowMapSize() = 0;
319 
320  virtual void setShadowMapSizeFromLight(bool enable) = 0;
321  virtual bool shadowMapSizeFromLight() = 0;
322 
323  virtual void useReflections(bool enable) = 0;
324  virtual bool usingReflections() = 0;
325 
326  virtual void setHdrReflections(bool hdr_reflect) = 0;
327  virtual bool hdrReflections() = 0;
328 
329  virtual void setReflectMapSize(int size) = 0;
330  virtual int reflectMapSize() = 0;
331 
332  virtual void setMinReflectAmount(double min_reflect) = 0;
333  virtual double minReflectAmount() = 0;
334 
335  // Grid tab ------------------------------------------------------------
336 
337  virtual void setDisplayOrthoGrid(bool enable) = 0;
338  virtual bool displayOrthoGrid() = 0;
339 
340  virtual void setOthroGridOffset(std::vector<double> offset) = 0;
341  virtual std::vector<double> othroGridOffset() = 0;
342 
343  virtual void setOthroGridSpacing(std::vector<double> offset) = 0;
344  virtual std::vector<double> othroGridSpacing() = 0;
345 
346  virtual void setOthroGridRuler(std::vector<int> offset) = 0;
347  virtual std::vector<int> othroGridRuler() = 0;
348 
349  virtual void setOrthoRuler(HOM_EnumValue &viewportGridRuler) = 0;
350  virtual HOM_EnumValue orthoRuler() = 0;
351 
352  virtual void setUVReferenceGrid(bool enable) = 0;
353  virtual bool uvReferenceGrid() = 0;
354 
355  virtual void setUVDisplayGridOverImage(bool enable) = 0;
356  virtual bool uvReferenceGridOverImage() = 0;
357 
358  virtual void setUVGridPixelSpacing(std::vector<int> offset) = 0;
359  virtual std::vector<int> uvGridPixelSpacing() = 0;
360 
361  virtual void setUVGridPixelOffset(std::vector<double> offset) = 0;
362  virtual std::vector<double> uvGridPixelOffset() = 0;
363 
364  virtual void setClampUVGridToBackground(bool enable) = 0;
365  virtual bool clampUVGridToBackground() = 0;
366 
367  virtual void setDisplayUVTileBoundaries(bool enable) = 0;
368  virtual bool displayUVTileBoundaries() = 0;
369 
370  // Background tab ------------------------------------------------------
371 
372  virtual void setColorScheme(HOM_EnumValue &viewportColorScheme) = 0;
373  virtual HOM_EnumValue colorScheme() = 0;
374 
375  SWIGOUT(%newobject backgroundImage;)
376  virtual HOM_GeometryViewportBackground *backgroundImage(
377  HOM_EnumValue &viewportBackgroundView,
378  int layer = 1) = 0;
379 
380  virtual void setDisplayBackgroundImage(bool enable) = 0;
381  virtual bool displayBackgroundImage() = 0;
382 
383  virtual void setDisplayEnvironmentBackgroundImage(bool enable) = 0;
384  virtual bool displayEnvironmentBackgroundImage() = 0;
385 
386  virtual void setFilterBackgroundImage(bool enable) = 0;
387  virtual bool filterBackgroundImage() = 0;
388 
389  virtual void setApplyZoomToBackgroundImage(bool enable) = 0;
390  virtual bool applyZoomToBackgroundImage() = 0;
391 
392  virtual void setBackgroundImageQuality(int quality) = 0;
393  virtual int backgroundImageQuality() = 0;
394 
395  // Texture tab --------------------------------------------------------
396 
397  virtual void setDisplayTextures(bool enable) = 0;
398  virtual bool displayTextures() = 0;
399 
400  virtual void setDisplayTextureLayers(bool enable) = 0;
401  virtual bool displayTextureLayers() = 0;
402 
403  virtual void setDisplayProjectedTextures(bool enable) = 0;
404  virtual bool displayProjectedTextures() = 0;
405 
406  virtual void setTextureMipmapping(bool enable) = 0;
407  virtual bool textureMipmapping() = 0;
408 
409  virtual void setTextureAnisotropicFilter(int num_samples) = 0;
410  virtual int textureAnisotropicFilter() = 0;
411 
412  virtual void setTextureCacheSize(int size_in_mb) = 0;
413  virtual int textureCacheSize() = 0;
414 
415  virtual void setTextureMaxMemory(int size_in_mb) = 0;
416  virtual int textureMaxMemory() = 0;
417 
418  virtual void setTextureAutoReduce(bool enable) = 0;
419  virtual bool textureAutoReduce() = 0;
420 
421  virtual void setTextureAutoReduce2D(bool enable) = 0;
422  virtual bool textureAutoReduce2D() = 0;
423 
424  virtual void setTextureAutoReduce3D(bool enable) = 0;
425  virtual bool textureAutoReduce3D() = 0;
426 
427  virtual void setTextureResLimit2D(bool enable) = 0;
428  virtual bool textureResLimit2D() = 0;
429 
430  virtual void setTextureMaxRes2D(std::vector<int> res) = 0;
431  virtual std::vector<int> textureMaxRes2D() = 0;
432 
433  virtual void setTextureBitDepthLimit2D(HOM_EnumValue &viewportTextureDepth)= 0;
434  virtual HOM_EnumValue textureBitDepthLimit2D() = 0;
435 
436  virtual void setTextureScale2D(double scale) = 0;
437  virtual double textureScale2D() = 0;
438 
439  virtual void setTextureResLimit3D(bool enable) = 0;
440  virtual bool textureResLimit3D() = 0;
441 
442  virtual void setTexture2DSettingsFor3D(bool enable) = 0;
443  virtual bool texture2DSettingsFor3D() = 0;
444 
445  virtual void setTextureMaxRes3D(std::vector<int> res) = 0;
446  virtual std::vector<int> textureMaxRes3D() = 0;
447 
448  virtual void setTextureBitDepthLimit3D(HOM_EnumValue &viewportTextureDepth)= 0;
449  virtual HOM_EnumValue textureBitDepthLimit3D() = 0;
450 
451  virtual void setTextureScale3D(double scale) = 0;
452  virtual double textureScale3D() = 0;
453 
454  // Optimize tab --------------------------------------------------------
455  virtual void useMaterialStylesheets(bool enable) = 0;
456  virtual bool usingMaterialStylesheets() = 0;
457 
458  virtual void usePerPrimStylesheets(bool enable) = 0;
459  virtual bool usingPerPrimStylesheets() = 0;
460 
461  virtual void usePackedStylesheets(bool enable) = 0;
462  virtual bool usingPackedStylesheets() = 0;
463 
464  virtual void useMaterialOverrides(bool enable) = 0;
465  virtual bool usingMaterialOverrides() = 0;
466 
467  virtual void setSingleObjectMaterialLimit(int num_materials) = 0;
468  virtual int singleObjectMaterialLimit() = 0;
469 
470  virtual void setMaterialUpdate(HOM_EnumValue &viewportMaterialUpdate) = 0;
471  virtual HOM_EnumValue materialUpdate() = 0;
472 
473  virtual void setInteractiveMaterialUpdate(bool enable) = 0;
474  virtual bool interactiveMaterialUpdate() = 0;
475 
476  virtual void updateMaterials() = 0;
477 
478 
479  virtual void setVisibleObjects(const std::string &uv) = 0;
480  virtual std::string visibleObjects() = 0;
481 
482  virtual void setRemoveBackfaces(bool enable) = 0;
483  virtual bool removeBackfaces() = 0;
484 
485  virtual void setHullsOnly(bool enable) = 0;
486  virtual bool hullsOnly() = 0;
487 
488  virtual void setDistanceBasedPackedCulling(bool enable) = 0;
489  virtual bool distanceBasedPackedCulling() = 0;
490 
491  virtual void setScenePolygonLimit(int millions_of_polygons) = 0;
492  virtual int scenePolygonLimit() = 0;
493 
494  virtual void setPackedBoundingBoxMode(HOM_EnumValue &viewportPackedBoxMode) = 0;
495  virtual HOM_EnumValue packedBoundingBoxMode() = 0;
496 
497  virtual void setOptimizeGeometry(bool enable) = 0;
498  virtual bool optimizeGeometry() = 0;
499 
500 
501  virtual void setAgentLODReduction(bool enable) = 0;
502  virtual bool agentLODReduction() = 0;
503 
504  virtual void setAgentLODReductionBias(int reduce_bias) = 0;
505  virtual int agentLODReductionBias() = 0;
506 
507  virtual void setAgentShapePointCutoff(int num_points) = 0;
508  virtual int agentShapePointCutoff() = 0;
509 
510  virtual void setMaxLODLevels(int num_levels) = 0;
511  virtual int maxLODLevels() = 0;
512 
513  virtual void setBaseLODLevel(int base_level) = 0;
514  virtual int baseLODLevel() = 0;
515 
516  virtual void setSingleBoneDeform(HOM_EnumValue &viewportAgentBoneDeform)=0;
517  virtual HOM_EnumValue singleBoneDeform() = 0;
518 
519  virtual void setAgentWireframe(HOM_EnumValue &viewportAgentWireframe)=0;
520  virtual HOM_EnumValue agentWireframe() = 0;
521 };
522 
523 #endif
#define HOM_DESTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:973
GLenum GLuint GLint GLint layer
Definition: glcorearb.h:1298
GA_API const UT_StringHolder uv
GLsizei const GLchar *const * string
Definition: glcorearb.h:813
#define SWIGOUT(x)
Definition: HOM_Defines.h:24
GLint level
Definition: glcorearb.h:107
GLenum GLenum GLsizei const GLuint GLboolean enabled
Definition: glcorearb.h:2538
GLsizeiptr size
Definition: glcorearb.h:663
GLint GLsizei width
Definition: glcorearb.h:102
GA_API const UT_StringHolder scale
#define HOM_API
Definition: HOM_API.h:13
#define HOM_CONSTRUCT_OBJECT(pointer)
Definition: HOM_Module.h:972
GLintptr offset
Definition: glcorearb.h:664
T angle(const Vec2< T > &v1, const Vec2< T > &v2)
Definition: Vec2.h:480
GLfloat GLfloat GLfloat alpha
Definition: glcorearb.h:111
HOM_GeometryViewportSettings(const HOM_GeometryViewportSettings &)
GLsizei const GLfloat * value
Definition: glcorearb.h:823
IMATH_INTERNAL_NAMESPACE_HEADER_ENTER T clip(const T &p, const Box< T > &box)
Definition: ImathBoxAlgo.h:89