载入中...
搜索中...
未找到
DecalGizmo.cpp
浏览该文件的文档.
8 EditorGizmoSnapshot result; result.target=document.targetId().value();result.targetRevision=document.revision();
9 const auto diagnostics=document.validate();for(const auto&diagnostic:diagnostics)if(diagnostic.severity()==DiagnosticSeverity::Error){result.status=EditorStatus::Rejected;result.diagnostics=diagnostics;return result;}
13 for(int i=0;i<3;++i){p[i]=*position[i].getIf<double>();n[i]=*normal[i].getIf<double>();length2+=n[i]*n[i];}
17 result.primitives.push_back({"decal-volume","oriented-wire-box",p,{size,size,depth},n,{0.2,0.75,1.0,0.9},0,0,true});
18 result.primitives.push_back({"decal-normal","arrow",p,{},n,{1.0,0.55,0.1,1.0},0,std::max(depth,size*0.5),false});
Stable, serializable authoring document for one projected decal.
Definition DecalTarget.h:33
const EditorValue * value(const std::string &path) const
Read a renderer-neutral property by stable path.
Definition DecalTarget.cpp:42
std::vector< EditorDiagnostic > validate() const
Validate projection geometry, fades, UVs and texture-channel rules.
Definition DecalTarget.cpp:70
EditorGizmoSnapshot build(const DecalDocumentTarget &document) const
Create a revision-bound projection volume and direction arrow.
Definition DecalGizmo.cpp:7
Definition DecalGizmo.cpp:5
Immutable revision-tagged overlay snapshot consumed by any viewport renderer.
Definition EditingGizmo.h:27
std::vector< GizmoPrimitive > primitives
Definition EditingGizmo.h:31
std::vector< Diagnostic > diagnostics
Definition EditingGizmo.h:32