Vixen
02b45cc4
csharp
public sealed class ShapeVocabulary

The shape names and tags a project uses, and the classes it declares.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

⚠ A declared asset, not a convention, and this looks like bureaucracy right up until it is the difference between the feature working and not. A clip's constraint refers to a shape by name, and the clip is portable exactly as far as that name is present and means the same thing on every body it might play on. Without a declared vocabulary the failure is a clip that silently does nothing on one character, discovered by a player. With one, it is a validation error at import naming the set and the missing name.

Fields and properties (4)

  • public Symbol Name

    What it is called.

  • public ReadOnlySpan<ShapeTerm> Shapes

    The shape names it allows.

  • public ReadOnlySpan<TagTerm> Tags

    The tags it allows.

  • public ReadOnlySpan<ShapeClass> Classes

    The classes it declares.

Methods (4)

  • public ShapeVocabulary(string name, IEnumerable<ShapeTerm>? shapes = null, IEnumerable<TagTerm>? tags = null, IEnumerable<ShapeClass>? classes = null)

    Declares a vocabulary.

  • public ShapeClass? Class(Symbol name)

    The class with a name, or .

  • public bool Validate(ProxyShapeSet set, ICollection<ShapeValidation> into, Symbol memberOf = default(Symbol))

    Checks a set against the vocabulary, and optionally against one of its classes.

  • public override string ToString()

    Returns a string that represents the current object.

Used by (6)

  • ProxyShapeTestsVixen.Animation.Tests
  • ShapeVocabularyContentVixen.Animation
  • AnimationBinderVixen.Editor.AssetEditors
  • AnimationWiringTestsVixen.Editor.App.Tests
  • ProxyShapeDocumentVixen.Editor.AssetEditors
  • ProxyShapeSetImporterVixen.Editor.Assets