9 #ifndef __HOM_GeometryViewport_h__
10 #define __HOM_GeometryViewport_h__
48 virtual void home() = 0;
50 virtual void homeAll() = 0;
51 virtual void homeSelected() = 0;
52 virtual void homeGrid() = 0;
53 virtual void homeNonTemplated() = 0;
54 virtual void homeBoundingBox(
HOM_BoundingBox *bbox,
bool center_to_origin =
false) = 0;
56 virtual void frameAll() = 0;
58 virtual void frameSelected() = 0;
59 virtual void frameGrid() = 0;
60 virtual void frameNonTemplated() = 0;
62 virtual void draw() = 0;
64 SWIGOUT(%newobject viewTransform;)
67 SWIGOUT(%newobject modelToGeometryTransform;)
68 virtual HOM_Matrix4 *modelToGeometryTransform() = 0;
69 SWIGOUT(%newobject cameraToModelTransform;)
71 SWIGOUT(%newobject ndcToCameraTransform;)
73 SWIGOUT(%newobject viewportToNDCTransform;)
75 SWIGOUT(%newobject windowToViewportTransform;)
76 virtual HOM_Matrix4 *windowToViewportTransform() = 0;
81 virtual std::vector<int> resolutionInPixels() = 0;
86 virtual void setCamera(
HOM_ObjNode &camera_node) = 0;
87 virtual void setCamera(
const char *camera_path) = 0;
88 virtual void saveViewToCamera(
HOM_ObjNode &camera_node) = 0;
90 SWIGOUT(%newobject defaultCamera;)
93 virtual void useDefaultCamera() =0;
95 virtual bool isCameraLockedToView() = 0;
96 virtual void lockCameraToView(
bool) = 0;
98 virtual bool isActive2D() = 0;
99 virtual bool isActive3D() = 0;
101 virtual bool usesConstructionPlane() = 0;
103 SWIGOUT(%newobject queryNodeAtPixel;)
104 virtual HOM_Node *queryNodeAtPixel(
int x,
int y,
bool pick_templates=
false) = 0;
105 SWIGOUT(%newobject queryPrimAtPixel;)
108 virtual std::pair<int, int> _queryPrimOnDrawables(
const std::vector<HOM_SimpleDrawable *> &drawables,
int x,
int y,
bool enable_occulsion) = 0;
110 SWIGOUT(%newobject queryInspectedGeometry;)
112 SWIGOUT(%newobject queryInspectedPrim;)
113 virtual HOM_Prim *queryInspectedPrim() = 0;
116 mapToWorld(
double x,
double y) = 0;
120 virtual std::pair<int, int> mapFromMouseChop(
double x,
double y) = 0;
123 queryWorldPositionAndNormal(
int x,
int y,
125 HOM_snapSelectionMode::SnapToAll)=0;
127 virtual std::vector<int>
size() = 0;
128 virtual std::vector<int> geometry() = 0;
130 SWIGOUT(%ignore addOpaqueEventCallback;)
131 virtual void addOpaqueEventCallback(
void *callback) = 0;
132 SWIGOUT(%ignore removeOpaqueEventCallback;)
133 virtual void removeOpaqueEventCallback(
void *callback) = 0;
134 SWIGOUT(%ignore opaqueEventCallbacks;)
135 virtual std::vector<void *> opaqueEventCallbacks() = 0;
136 SWIGOUT(%ignore clearOpaqueEventCallbacks;)
137 virtual void clearOpaqueEventCallbacks() = 0;
143 void addEventCallback(InterpreterObject callback)
145 self->addOpaqueEventCallback(callback);
148 void removeEventCallback(InterpreterObject callback)
150 self->removeOpaqueEventCallback(callback);
153 void clearEventCallbacks()
155 self->clearOpaqueEventCallbacks();
158 std::vector<InterpreterObject> eventCallbacks()
160 std::vector<void *> opaque_callbacks(self->opaqueEventCallbacks());
162 std::vector<InterpreterObject> callbacks;
163 for (
int i = 0; i< opaque_callbacks.size(); ++i)
164 callbacks.push_back((InterpreterObject)opaque_callbacks[i]);
#define HOM_DESTRUCT_OBJECT(pointer)
OIIO_API bool rename(string_view from, string_view to, std::string &err)
string __repr__(VtArray< T > const &self)
std::tuple< Types...> UT_Tuple
GLuint const GLchar * name
GLint GLint GLsizei GLint GLenum GLenum type
#define HOM_CONSTRUCT_OBJECT(pointer)
GLsizei const GLchar *const * string
virtual ~HOM_GeometryViewport()
HOM_GeometryViewport(const HOM_GeometryViewport &)