HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
camera.h
Go to the documentation of this file.
1 //
2 // Copyright 2016 Pixar
3 //
4 // Licensed under the Apache License, Version 2.0 (the "Apache License")
5 // with the following modification; you may not use this file except in
6 // compliance with the Apache License and the following modification to it:
7 // Section 6. Trademarks. is deleted and replaced with:
8 //
9 // 6. Trademarks. This License does not grant permission to use the trade
10 // names, trademarks, service marks, or product names of the Licensor
11 // and its affiliates, except as required to comply with Section 4(c) of
12 // the License and to reproduce the content of the NOTICE file.
13 //
14 // You may obtain a copy of the Apache License at
15 //
16 // http://www.apache.org/licenses/LICENSE-2.0
17 //
18 // Unless required by applicable law or agreed to in writing, software
19 // distributed under the Apache License with the above modification is
20 // distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21 // KIND, either express or implied. See the Apache License for the specific
22 // language governing permissions and limitations under the Apache License.
23 //
24 #ifndef USDGEOM_GENERATED_CAMERA_H
25 #define USDGEOM_GENERATED_CAMERA_H
26 
27 /// \file usdGeom/camera.h
28 
29 #include "pxr/pxr.h"
30 #include "pxr/usd/usdGeom/api.h"
32 #include "pxr/usd/usd/prim.h"
33 #include "pxr/usd/usd/stage.h"
34 #include "pxr/usd/usdGeom/tokens.h"
35 
36 #include "pxr/base/gf/camera.h"
37 
38 #include "pxr/base/vt/value.h"
39 
40 #include "pxr/base/gf/vec3d.h"
41 #include "pxr/base/gf/vec3f.h"
42 #include "pxr/base/gf/matrix4d.h"
43 
44 #include "pxr/base/tf/token.h"
45 #include "pxr/base/tf/type.h"
46 
48 
49 class SdfAssetPath;
50 
51 // -------------------------------------------------------------------------- //
52 // CAMERA //
53 // -------------------------------------------------------------------------- //
54 
55 /// \class UsdGeomCamera
56 ///
57 /// Transformable camera.
58 ///
59 /// Describes optical properties of a camera via a common set of attributes
60 /// that provide control over the camera's frustum as well as its depth of
61 /// field. For stereo, the left and right camera are individual prims tagged
62 /// through the \ref UsdGeomCamera::GetStereoRoleAttr() "stereoRole attribute".
63 ///
64 /// There is a corresponding class GfCamera, which can hold the state of a
65 /// camera (at a particular time). \ref UsdGeomCamera::GetCamera() and
66 /// \ref UsdGeomCamera::SetFromCamera() convert between a USD camera prim and
67 /// a GfCamera.
68 ///
69 /// To obtain the camera's location in world space, call the following on a
70 /// UsdGeomCamera 'camera':
71 /// \code
72 /// GfMatrix4d camXform = camera.ComputeLocalToWorldTransform(time);
73 /// \endcode
74 /// \note
75 /// <b>Cameras in USD are always "Y up", regardless of the stage's orientation
76 /// (i.e. UsdGeomGetStageUpAxis()).</b> This means that the inverse of
77 /// 'camXform' (the VIEW half of the <A HREF="http://www.glprogramming.com/red/chapter03.html#name2">MODELVIEW transform in OpenGL parlance</A>)
78 /// will transform the world such that the camera is at the origin, looking
79 /// down the -Z axis, with +Y as the up axis, and +X pointing to the right.
80 /// This describes a __right handed coordinate system__.
81 ///
82 /// \sa \ref UsdGeom_LinAlgBasics
83 ///
84 ///
85 /// For any described attribute \em Fallback \em Value or \em Allowed \em Values below
86 /// that are text/tokens, the actual token is published and defined in \ref UsdGeomTokens.
87 /// So to set an attribute to the value "rightHanded", use UsdGeomTokens->rightHanded
88 /// as the value.
89 ///
91 {
92 public:
93  /// Compile time constant representing what kind of schema this class is.
94  ///
95  /// \sa UsdSchemaType
97 
98  /// Construct a UsdGeomCamera on UsdPrim \p prim .
99  /// Equivalent to UsdGeomCamera::Get(prim.GetStage(), prim.GetPath())
100  /// for a \em valid \p prim, but will not immediately throw an error for
101  /// an invalid \p prim
102  explicit UsdGeomCamera(const UsdPrim& prim=UsdPrim())
103  : UsdGeomXformable(prim)
104  {
105  }
106 
107  /// Construct a UsdGeomCamera on the prim held by \p schemaObj .
108  /// Should be preferred over UsdGeomCamera(schemaObj.GetPrim()),
109  /// as it preserves SchemaBase state.
110  explicit UsdGeomCamera(const UsdSchemaBase& schemaObj)
111  : UsdGeomXformable(schemaObj)
112  {
113  }
114 
115  /// Destructor.
117  virtual ~UsdGeomCamera();
118 
119  /// Return a vector of names of all pre-declared attributes for this schema
120  /// class and all its ancestor classes. Does not include attributes that
121  /// may be authored by custom/extended methods of the schemas involved.
123  static const TfTokenVector &
124  GetSchemaAttributeNames(bool includeInherited=true);
125 
126  /// Return a UsdGeomCamera holding the prim adhering to this
127  /// schema at \p path on \p stage. If no prim exists at \p path on
128  /// \p stage, or if the prim at that path does not adhere to this schema,
129  /// return an invalid schema object. This is shorthand for the following:
130  ///
131  /// \code
132  /// UsdGeomCamera(stage->GetPrimAtPath(path));
133  /// \endcode
134  ///
136  static UsdGeomCamera
137  Get(const UsdStagePtr &stage, const SdfPath &path);
138 
139  /// Attempt to ensure a \a UsdPrim adhering to this schema at \p path
140  /// is defined (according to UsdPrim::IsDefined()) on this stage.
141  ///
142  /// If a prim adhering to this schema at \p path is already defined on this
143  /// stage, return that prim. Otherwise author an \a SdfPrimSpec with
144  /// \a specifier == \a SdfSpecifierDef and this schema's prim type name for
145  /// the prim at \p path at the current EditTarget. Author \a SdfPrimSpec s
146  /// with \p specifier == \a SdfSpecifierDef and empty typeName at the
147  /// current EditTarget for any nonexistent, or existing but not \a Defined
148  /// ancestors.
149  ///
150  /// The given \a path must be an absolute prim path that does not contain
151  /// any variant selections.
152  ///
153  /// If it is impossible to author any of the necessary PrimSpecs, (for
154  /// example, in case \a path cannot map to the current UsdEditTarget's
155  /// namespace) issue an error and return an invalid \a UsdPrim.
156  ///
157  /// Note that this method may return a defined prim whose typeName does not
158  /// specify this schema class, in case a stronger typeName opinion overrides
159  /// the opinion at the current EditTarget.
160  ///
162  static UsdGeomCamera
163  Define(const UsdStagePtr &stage, const SdfPath &path);
164 
165 protected:
166  /// Returns the type of schema this class belongs to.
167  ///
168  /// \sa UsdSchemaType
170  UsdSchemaType _GetSchemaType() const override;
171 
172 private:
173  // needs to invoke _GetStaticTfType.
174  friend class UsdSchemaRegistry;
176  static const TfType &_GetStaticTfType();
177 
178  static bool _IsTypedSchema();
179 
180  // override SchemaBase virtuals.
182  const TfType &_GetTfType() const override;
183 
184 public:
185  // --------------------------------------------------------------------- //
186  // PROJECTION
187  // --------------------------------------------------------------------- //
188  ///
189  ///
190  /// | ||
191  /// | -- | -- |
192  /// | Declaration | `token projection = "perspective"` |
193  /// | C++ Type | TfToken |
194  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Token |
195  /// | \ref UsdGeomTokens "Allowed Values" | perspective, orthographic |
198 
199  /// See GetProjectionAttr(), and also
200  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
201  /// If specified, author \p defaultValue as the attribute's default,
202  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
203  /// the default for \p writeSparsely is \c false.
205  UsdAttribute CreateProjectionAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
206 
207 public:
208  // --------------------------------------------------------------------- //
209  // HORIZONTALAPERTURE
210  // --------------------------------------------------------------------- //
211  /// Horizontal aperture in millimeters (or, more general, tenths
212  /// of a world unit).
213  /// Defaults to the standard 35mm spherical projector aperture.
214  ///
215  /// | ||
216  /// | -- | -- |
217  /// | Declaration | `float horizontalAperture = 20.955` |
218  /// | C++ Type | float |
219  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float |
222 
223  /// See GetHorizontalApertureAttr(), and also
224  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
225  /// If specified, author \p defaultValue as the attribute's default,
226  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
227  /// the default for \p writeSparsely is \c false.
229  UsdAttribute CreateHorizontalApertureAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
230 
231 public:
232  // --------------------------------------------------------------------- //
233  // VERTICALAPERTURE
234  // --------------------------------------------------------------------- //
235  /// Vertical aperture in millimeters (or, more general, tenths of
236  /// a world unit).
237  /// Defaults to the standard 35mm spherical projector aperture.
238  ///
239  /// | ||
240  /// | -- | -- |
241  /// | Declaration | `float verticalAperture = 15.2908` |
242  /// | C++ Type | float |
243  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float |
246 
247  /// See GetVerticalApertureAttr(), and also
248  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
249  /// If specified, author \p defaultValue as the attribute's default,
250  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
251  /// the default for \p writeSparsely is \c false.
253  UsdAttribute CreateVerticalApertureAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
254 
255 public:
256  // --------------------------------------------------------------------- //
257  // HORIZONTALAPERTUREOFFSET
258  // --------------------------------------------------------------------- //
259  /// Horizontal aperture offset in the same units as
260  /// horizontalAperture. Defaults to 0.
261  ///
262  /// | ||
263  /// | -- | -- |
264  /// | Declaration | `float horizontalApertureOffset = 0` |
265  /// | C++ Type | float |
266  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float |
269 
270  /// See GetHorizontalApertureOffsetAttr(), and also
271  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
272  /// If specified, author \p defaultValue as the attribute's default,
273  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
274  /// the default for \p writeSparsely is \c false.
276  UsdAttribute CreateHorizontalApertureOffsetAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
277 
278 public:
279  // --------------------------------------------------------------------- //
280  // VERTICALAPERTUREOFFSET
281  // --------------------------------------------------------------------- //
282  /// Vertical aperture offset in the same units as
283  /// verticalAperture. Defaults to 0.
284  ///
285  /// | ||
286  /// | -- | -- |
287  /// | Declaration | `float verticalApertureOffset = 0` |
288  /// | C++ Type | float |
289  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float |
292 
293  /// See GetVerticalApertureOffsetAttr(), and also
294  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
295  /// If specified, author \p defaultValue as the attribute's default,
296  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
297  /// the default for \p writeSparsely is \c false.
299  UsdAttribute CreateVerticalApertureOffsetAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
300 
301 public:
302  // --------------------------------------------------------------------- //
303  // FOCALLENGTH
304  // --------------------------------------------------------------------- //
305  /// Perspective focal length in millimeters (or, more general,
306  /// tenths of a world unit).
307  ///
308  /// | ||
309  /// | -- | -- |
310  /// | Declaration | `float focalLength = 50` |
311  /// | C++ Type | float |
312  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float |
315 
316  /// See GetFocalLengthAttr(), and also
317  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
318  /// If specified, author \p defaultValue as the attribute's default,
319  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
320  /// the default for \p writeSparsely is \c false.
322  UsdAttribute CreateFocalLengthAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
323 
324 public:
325  // --------------------------------------------------------------------- //
326  // CLIPPINGRANGE
327  // --------------------------------------------------------------------- //
328  /// Near and far clipping distances in centimeters (or, more
329  /// general, world units).
330  ///
331  /// | ||
332  /// | -- | -- |
333  /// | Declaration | `float2 clippingRange = (1, 1000000)` |
334  /// | C++ Type | GfVec2f |
335  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float2 |
338 
339  /// See GetClippingRangeAttr(), and also
340  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
341  /// If specified, author \p defaultValue as the attribute's default,
342  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
343  /// the default for \p writeSparsely is \c false.
345  UsdAttribute CreateClippingRangeAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
346 
347 public:
348  // --------------------------------------------------------------------- //
349  // CLIPPINGPLANES
350  // --------------------------------------------------------------------- //
351  /// Additional, arbitrarily oriented clipping planes.
352  /// A vector (a,b,c,d) encodes a clipping plane that cuts off
353  /// (x,y,z) with a * x + b * y + c * z + d * 1 < 0 where (x,y,z)
354  /// are the coordinates in the camera's space.
355  ///
356  /// | ||
357  /// | -- | -- |
358  /// | Declaration | `float4[] clippingPlanes = []` |
359  /// | C++ Type | VtArray<GfVec4f> |
360  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float4Array |
363 
364  /// See GetClippingPlanesAttr(), and also
365  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
366  /// If specified, author \p defaultValue as the attribute's default,
367  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
368  /// the default for \p writeSparsely is \c false.
370  UsdAttribute CreateClippingPlanesAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
371 
372 public:
373  // --------------------------------------------------------------------- //
374  // FSTOP
375  // --------------------------------------------------------------------- //
376  /// Lens aperture. Defaults to 0.0, which turns off focusing.
377  ///
378  /// | ||
379  /// | -- | -- |
380  /// | Declaration | `float fStop = 0` |
381  /// | C++ Type | float |
382  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float |
384  UsdAttribute GetFStopAttr() const;
385 
386  /// See GetFStopAttr(), and also
387  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
388  /// If specified, author \p defaultValue as the attribute's default,
389  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
390  /// the default for \p writeSparsely is \c false.
392  UsdAttribute CreateFStopAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
393 
394 public:
395  // --------------------------------------------------------------------- //
396  // FOCUSDISTANCE
397  // --------------------------------------------------------------------- //
398  /// Distance from the camera to the focus plane in centimeters (or
399  /// more general, world units).
400  ///
401  /// | ||
402  /// | -- | -- |
403  /// | Declaration | `float focusDistance = 0` |
404  /// | C++ Type | float |
405  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Float |
408 
409  /// See GetFocusDistanceAttr(), and also
410  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
411  /// If specified, author \p defaultValue as the attribute's default,
412  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
413  /// the default for \p writeSparsely is \c false.
415  UsdAttribute CreateFocusDistanceAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
416 
417 public:
418  // --------------------------------------------------------------------- //
419  // STEREOROLE
420  // --------------------------------------------------------------------- //
421  /// If different from mono, the camera is intended to be the left
422  /// or right camera of a stereo setup.
423  ///
424  /// | ||
425  /// | -- | -- |
426  /// | Declaration | `uniform token stereoRole = "mono"` |
427  /// | C++ Type | TfToken |
428  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Token |
429  /// | \ref SdfVariability "Variability" | SdfVariabilityUniform |
430  /// | \ref UsdGeomTokens "Allowed Values" | mono, left, right |
433 
434  /// See GetStereoRoleAttr(), and also
435  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
436  /// If specified, author \p defaultValue as the attribute's default,
437  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
438  /// the default for \p writeSparsely is \c false.
440  UsdAttribute CreateStereoRoleAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
441 
442 public:
443  // --------------------------------------------------------------------- //
444  // SHUTTEROPEN
445  // --------------------------------------------------------------------- //
446  /// Frame relative shutter open time in UsdTimeCode units (negative
447  /// value indicates that the shutter opens before the current
448  /// frame time). Used for motion blur.
449  ///
450  /// | ||
451  /// | -- | -- |
452  /// | Declaration | `double shutter:open = 0` |
453  /// | C++ Type | double |
454  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
457 
458  /// See GetShutterOpenAttr(), and also
459  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
460  /// If specified, author \p defaultValue as the attribute's default,
461  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
462  /// the default for \p writeSparsely is \c false.
464  UsdAttribute CreateShutterOpenAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
465 
466 public:
467  // --------------------------------------------------------------------- //
468  // SHUTTERCLOSE
469  // --------------------------------------------------------------------- //
470  /// Frame relative shutter close time, analogous comments from
471  /// shutter:open apply. A value greater or equal to shutter:open
472  /// should be authored, otherwise there is no exposure and a
473  /// renderer should produce a black image.
474  ///
475  /// | ||
476  /// | -- | -- |
477  /// | Declaration | `double shutter:close = 0` |
478  /// | C++ Type | double |
479  /// | \ref Usd_Datatypes "Usd Type" | SdfValueTypeNames->Double |
482 
483  /// See GetShutterCloseAttr(), and also
484  /// \ref Usd_Create_Or_Get_Property for when to use Get vs Create.
485  /// If specified, author \p defaultValue as the attribute's default,
486  /// sparsely (when it makes sense to do so) if \p writeSparsely is \c true -
487  /// the default for \p writeSparsely is \c false.
489  UsdAttribute CreateShutterCloseAttr(VtValue const &defaultValue = VtValue(), bool writeSparsely=false) const;
490 
491 public:
492  // ===================================================================== //
493  // Feel free to add custom code below this line, it will be preserved by
494  // the code generator.
495  //
496  // Just remember to:
497  // - Close the class declaration with };
498  // - Close the namespace with PXR_NAMESPACE_CLOSE_SCOPE
499  // - Close the include guard with #endif
500  // ===================================================================== //
501  // --(BEGIN CUSTOM CODE)--
502 
503  /// Creates a GfCamera object from the attribute values at \p time.
504  ///
506  GfCamera GetCamera(const UsdTimeCode &time) const;
507 
508  /// Write attribute values from \p camera for \p time.
509  ///
511  void SetFromCamera(const GfCamera &camera, const UsdTimeCode &time);
512 };
513 
515 
516 #endif
USDGEOM_API UsdAttribute GetVerticalApertureOffsetAttr() const
USDGEOM_API UsdAttribute CreateHorizontalApertureOffsetAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
USDGEOM_API UsdAttribute CreateClippingPlanesAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
USDGEOM_API UsdAttribute CreateShutterCloseAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
USDGEOM_API UsdAttribute GetVerticalApertureAttr() const
Object-based representation of a camera.
Definition: camera.h:49
GT_API const UT_StringHolder time
USDGEOM_API UsdAttribute CreateHorizontalApertureAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
static USDGEOM_API const TfTokenVector & GetSchemaAttributeNames(bool includeInherited=true)
USDGEOM_API UsdAttribute CreateVerticalApertureOffsetAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
USDGEOM_API UsdAttribute CreateProjectionAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
USDGEOM_API UsdAttribute GetFocusDistanceAttr() const
USDGEOM_API GfCamera GetCamera(const UsdTimeCode &time) const
USDGEOM_API UsdAttribute CreateFocalLengthAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
Represents a concrete typed schema.
USDGEOM_API UsdAttribute CreateStereoRoleAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
USDGEOM_API UsdAttribute CreateShutterOpenAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
USDGEOM_API UsdAttribute GetClippingPlanesAttr() const
USDGEOM_API void SetFromCamera(const GfCamera &camera, const UsdTimeCode &time)
USDGEOM_API UsdAttribute GetClippingRangeAttr() const
USDGEOM_API UsdAttribute GetHorizontalApertureOffsetAttr() const
USDGEOM_API UsdSchemaType _GetSchemaType() const override
virtual USDGEOM_API ~UsdGeomCamera()
Destructor.
UsdSchemaType
Definition: common.h:127
USDGEOM_API UsdAttribute GetShutterCloseAttr() const
Definition: prim.h:132
std::vector< TfToken > TfTokenVector
Convenience types.
Definition: token.h:446
USDGEOM_API UsdAttribute GetStereoRoleAttr() const
UsdGeomCamera(const UsdSchemaBase &schemaObj)
Definition: camera.h:110
USDGEOM_API UsdAttribute CreateClippingRangeAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
Definition: path.h:288
static USDGEOM_API UsdGeomCamera Get(const UsdStagePtr &stage, const SdfPath &path)
GLsizei const GLchar *const * path
Definition: glew.h:6461
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Definition: path.h:1346
USDGEOM_API UsdAttribute CreateVerticalApertureAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
static const UsdSchemaType schemaType
Definition: camera.h:96
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition: pxr.h:91
USDGEOM_API UsdAttribute GetProjectionAttr() const
UsdGeomCamera(const UsdPrim &prim=UsdPrim())
Definition: camera.h:102
Definition: type.h:64
USDGEOM_API UsdAttribute GetFocalLengthAttr() const
USDGEOM_API UsdAttribute CreateFocusDistanceAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
#define USDGEOM_API
Definition: api.h:40
USDGEOM_API UsdAttribute GetFStopAttr() const
USDGEOM_API UsdAttribute CreateFStopAttr(VtValue const &defaultValue=VtValue(), bool writeSparsely=false) const
USDGEOM_API UsdAttribute GetShutterOpenAttr() const
Definition: value.h:174
static USDGEOM_API UsdGeomCamera Define(const UsdStagePtr &stage, const SdfPath &path)
USDGEOM_API UsdAttribute GetHorizontalApertureAttr() const