forked from PixarAnimationStudios/OpenUSD
-
Notifications
You must be signed in to change notification settings - Fork 22
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add automatic generated files and enable text rendering in USDView (P…
…ixarAnimationStudios#76) UsdView still show nothing for text, because the implementation is not ready. (cherry picked from commit 5b8b03705b63a8cad9503516d2cbf8b1a8c9a64a)
- Loading branch information
1 parent
c8c606e
commit 754b450
Showing
15 changed files
with
1,418 additions
and
181 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
#usda 1.0 | ||
|
||
( | ||
upAxis = "Y" | ||
doc = """This layer represents the various geometric forms that curves | ||
may be used to represent.""" | ||
) | ||
|
||
|
||
def Xform "Text1" { | ||
uniform token[] xformOpOrder = ["xformOp:translate"] | ||
float3 xformOp:translate = (0, 9, 0) | ||
def Scope "Text11"{ | ||
def SimpleText "TextA" (){ | ||
uniform token[] xformOpOrder = ["xformOp:translate"] | ||
float3 xformOp:translate = (3, 0, 0) | ||
|
||
string typeface = "Arial" | ||
int textHeight = 22 | ||
string textData = "Fox" | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
// | ||
// Copyright 2016 Pixar | ||
// | ||
// Licensed under the Apache License, Version 2.0 (the "Apache License") | ||
// with the following modification; you may not use this file except in | ||
// compliance with the Apache License and the following modification to it: | ||
// Section 6. Trademarks. is deleted and replaced with: | ||
// | ||
// 6. Trademarks. This License does not grant permission to use the trade | ||
// names, trademarks, service marks, or product names of the Licensor | ||
// and its affiliates, except as required to comply with Section 4(c) of | ||
// the License and to reproduce the content of the NOTICE file. | ||
// | ||
// You may obtain a copy of the Apache License at | ||
// | ||
// http://www.apache.org/licenses/LICENSE-2.0 | ||
// | ||
// Unless required by applicable law or agreed to in writing, software | ||
// distributed under the Apache License with the above modification is | ||
// distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||
// KIND, either express or implied. See the Apache License for the specific | ||
// language governing permissions and limitations under the Apache License. | ||
// | ||
#include "pxr/usd/usdGeom/decoratedSimpleText.h" | ||
#include "pxr/usd/usd/schemaRegistry.h" | ||
#include "pxr/usd/usd/typed.h" | ||
|
||
#include "pxr/usd/sdf/types.h" | ||
#include "pxr/usd/sdf/assetPath.h" | ||
|
||
PXR_NAMESPACE_OPEN_SCOPE | ||
|
||
// Register the schema with the TfType system. | ||
TF_REGISTRY_FUNCTION(TfType) | ||
{ | ||
TfType::Define<UsdGeomDecoratedSimpleText, | ||
TfType::Bases< UsdGeomSimpleText > >(); | ||
|
||
} | ||
|
||
/* virtual */ | ||
UsdGeomDecoratedSimpleText::~UsdGeomDecoratedSimpleText() | ||
{ | ||
} | ||
|
||
/* static */ | ||
UsdGeomDecoratedSimpleText | ||
UsdGeomDecoratedSimpleText::Get(const UsdStagePtr &stage, const SdfPath &path) | ||
{ | ||
if (!stage) { | ||
TF_CODING_ERROR("Invalid stage"); | ||
return UsdGeomDecoratedSimpleText(); | ||
} | ||
return UsdGeomDecoratedSimpleText(stage->GetPrimAtPath(path)); | ||
} | ||
|
||
|
||
/* virtual */ | ||
UsdSchemaKind UsdGeomDecoratedSimpleText::_GetSchemaKind() const { | ||
return UsdGeomDecoratedSimpleText::schemaKind; | ||
} | ||
|
||
/* virtual */ | ||
UsdSchemaKind UsdGeomDecoratedSimpleText::_GetSchemaType() const { | ||
return UsdGeomDecoratedSimpleText::schemaType; | ||
} | ||
|
||
/* static */ | ||
const TfType & | ||
UsdGeomDecoratedSimpleText::_GetStaticTfType() | ||
{ | ||
static TfType tfType = TfType::Find<UsdGeomDecoratedSimpleText>(); | ||
return tfType; | ||
} | ||
|
||
/* static */ | ||
bool | ||
UsdGeomDecoratedSimpleText::_IsTypedSchema() | ||
{ | ||
static bool isTyped = _GetStaticTfType().IsA<UsdTyped>(); | ||
return isTyped; | ||
} | ||
|
||
/* virtual */ | ||
const TfType & | ||
UsdGeomDecoratedSimpleText::_GetTfType() const | ||
{ | ||
return _GetStaticTfType(); | ||
} | ||
|
||
/*static*/ | ||
const TfTokenVector& | ||
UsdGeomDecoratedSimpleText::GetSchemaAttributeNames(bool includeInherited) | ||
{ | ||
static TfTokenVector localNames; | ||
static TfTokenVector allNames = | ||
UsdGeomSimpleText::GetSchemaAttributeNames(true); | ||
|
||
if (includeInherited) | ||
return allNames; | ||
else | ||
return localNames; | ||
} | ||
|
||
PXR_NAMESPACE_CLOSE_SCOPE | ||
|
||
// ===================================================================== // | ||
// Feel free to add custom code below this line. It will be preserved by | ||
// the code generator. | ||
// | ||
// Just remember to wrap code in the appropriate delimiters: | ||
// 'PXR_NAMESPACE_OPEN_SCOPE', 'PXR_NAMESPACE_CLOSE_SCOPE'. | ||
// ===================================================================== // | ||
// --(BEGIN CUSTOM CODE)-- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,151 @@ | ||
// | ||
// Copyright 2016 Pixar | ||
// | ||
// Licensed under the Apache License, Version 2.0 (the "Apache License") | ||
// with the following modification; you may not use this file except in | ||
// compliance with the Apache License and the following modification to it: | ||
// Section 6. Trademarks. is deleted and replaced with: | ||
// | ||
// 6. Trademarks. This License does not grant permission to use the trade | ||
// names, trademarks, service marks, or product names of the Licensor | ||
// and its affiliates, except as required to comply with Section 4(c) of | ||
// the License and to reproduce the content of the NOTICE file. | ||
// | ||
// You may obtain a copy of the Apache License at | ||
// | ||
// http://www.apache.org/licenses/LICENSE-2.0 | ||
// | ||
// Unless required by applicable law or agreed to in writing, software | ||
// distributed under the Apache License with the above modification is | ||
// distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | ||
// KIND, either express or implied. See the Apache License for the specific | ||
// language governing permissions and limitations under the Apache License. | ||
// | ||
#ifndef USDGEOM_GENERATED_DECORATEDSIMPLETEXT_H | ||
#define USDGEOM_GENERATED_DECORATEDSIMPLETEXT_H | ||
|
||
/// \file usdGeom/decoratedSimpleText.h | ||
|
||
#include "pxr/pxr.h" | ||
#include "pxr/usd/usdGeom/api.h" | ||
#include "pxr/usd/usdGeom/simpleText.h" | ||
#include "pxr/usd/usd/prim.h" | ||
#include "pxr/usd/usd/stage.h" | ||
|
||
#include "pxr/base/vt/value.h" | ||
|
||
#include "pxr/base/gf/vec3d.h" | ||
#include "pxr/base/gf/vec3f.h" | ||
#include "pxr/base/gf/matrix4d.h" | ||
|
||
#include "pxr/base/tf/token.h" | ||
#include "pxr/base/tf/type.h" | ||
|
||
PXR_NAMESPACE_OPEN_SCOPE | ||
|
||
class SdfAssetPath; | ||
|
||
// -------------------------------------------------------------------------- // | ||
// DECORATEDSIMPLETEXT // | ||
// -------------------------------------------------------------------------- // | ||
|
||
/// \class UsdGeomDecoratedSimpleText | ||
/// | ||
/// Class for decorated single line single style text. | ||
/// | ||
class UsdGeomDecoratedSimpleText : public UsdGeomSimpleText | ||
{ | ||
public: | ||
/// Compile time constant representing what kind of schema this class is. | ||
/// | ||
/// \sa UsdSchemaKind | ||
static const UsdSchemaKind schemaKind = UsdSchemaKind::AbstractTyped; | ||
|
||
/// \deprecated | ||
/// Same as schemaKind, provided to maintain temporary backward | ||
/// compatibility with older generated schemas. | ||
static const UsdSchemaKind schemaType = UsdSchemaKind::AbstractTyped; | ||
|
||
/// Construct a UsdGeomDecoratedSimpleText on UsdPrim \p prim . | ||
/// Equivalent to UsdGeomDecoratedSimpleText::Get(prim.GetStage(), prim.GetPath()) | ||
/// for a \em valid \p prim, but will not immediately throw an error for | ||
/// an invalid \p prim | ||
explicit UsdGeomDecoratedSimpleText(const UsdPrim& prim=UsdPrim()) | ||
: UsdGeomSimpleText(prim) | ||
{ | ||
} | ||
|
||
/// Construct a UsdGeomDecoratedSimpleText on the prim held by \p schemaObj . | ||
/// Should be preferred over UsdGeomDecoratedSimpleText(schemaObj.GetPrim()), | ||
/// as it preserves SchemaBase state. | ||
explicit UsdGeomDecoratedSimpleText(const UsdSchemaBase& schemaObj) | ||
: UsdGeomSimpleText(schemaObj) | ||
{ | ||
} | ||
|
||
/// Destructor. | ||
USDGEOM_API | ||
virtual ~UsdGeomDecoratedSimpleText(); | ||
|
||
/// Return a vector of names of all pre-declared attributes for this schema | ||
/// class and all its ancestor classes. Does not include attributes that | ||
/// may be authored by custom/extended methods of the schemas involved. | ||
USDGEOM_API | ||
static const TfTokenVector & | ||
GetSchemaAttributeNames(bool includeInherited=true); | ||
|
||
/// Return a UsdGeomDecoratedSimpleText holding the prim adhering to this | ||
/// schema at \p path on \p stage. If no prim exists at \p path on | ||
/// \p stage, or if the prim at that path does not adhere to this schema, | ||
/// return an invalid schema object. This is shorthand for the following: | ||
/// | ||
/// \code | ||
/// UsdGeomDecoratedSimpleText(stage->GetPrimAtPath(path)); | ||
/// \endcode | ||
/// | ||
USDGEOM_API | ||
static UsdGeomDecoratedSimpleText | ||
Get(const UsdStagePtr &stage, const SdfPath &path); | ||
|
||
|
||
protected: | ||
/// Returns the kind of schema this class belongs to. | ||
/// | ||
/// \sa UsdSchemaKind | ||
USDGEOM_API | ||
UsdSchemaKind _GetSchemaKind() const override; | ||
|
||
/// \deprecated | ||
/// Same as _GetSchemaKind, provided to maintain temporary backward | ||
/// compatibility with older generated schemas. | ||
USDGEOM_API | ||
UsdSchemaKind _GetSchemaType() const override; | ||
|
||
private: | ||
// needs to invoke _GetStaticTfType. | ||
friend class UsdSchemaRegistry; | ||
USDGEOM_API | ||
static const TfType &_GetStaticTfType(); | ||
|
||
static bool _IsTypedSchema(); | ||
|
||
// override SchemaBase virtuals. | ||
USDGEOM_API | ||
const TfType &_GetTfType() const override; | ||
|
||
public: | ||
// ===================================================================== // | ||
// Feel free to add custom code below this line, it will be preserved by | ||
// the code generator. | ||
// | ||
// Just remember to: | ||
// - Close the class declaration with }; | ||
// - Close the namespace with PXR_NAMESPACE_CLOSE_SCOPE | ||
// - Close the include guard with #endif | ||
// ===================================================================== // | ||
// --(BEGIN CUSTOM CODE)-- | ||
}; | ||
|
||
PXR_NAMESPACE_CLOSE_SCOPE | ||
|
||
#endif |
Oops, something went wrong.