/usr/src/castle-game-engine-4.1.1/x3d/x3dnodes_97_hanim.inc is in castle-game-engine-src 4.1.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | {
Copyright 2008-2013 Michalis Kamburelis.
This file is part of "Castle Game Engine".
"Castle Game Engine" is free software; see the file COPYING.txt,
included in this distribution, for details about the copyright.
"Castle Game Engine" is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
----------------------------------------------------------------------------
}
{ VRML 97 nodes for HAnim 1.0 and 200x specifications.
For X3D there's different file, x3d_h-anim, as for X3D nodes are
prefixed with "HAnim" before their name.
VRML 97 nodes actually inherit from X3D nodes, so you should write
your code to use X3D nodes (like THAnimDisplacerNode) and then VRML 97
versions will also be handled automatically. }
{ }
{$ifdef read_interface}
TDisplacerNode = class(THAnimDisplacerNode)
public
class function ClassNodeTypeName: string; override;
class function URNMatching(const URN: string): boolean; override;
end;
THumanoidNode = class(THAnimHumanoidNode)
public
class function ClassNodeTypeName: string; override;
class function URNMatching(const URN: string): boolean; override;
end;
TJointNode = class(THAnimJointNode)
public
class function ClassNodeTypeName: string; override;
class function URNMatching(const URN: string): boolean; override;
end;
TSegmentNode = class(THAnimSegmentNode)
public
class function ClassNodeTypeName: string; override;
class function URNMatching(const URN: string): boolean; override;
end;
TSiteNode = class(THAnimSiteNode)
public
class function ClassNodeTypeName: string; override;
class function URNMatching(const URN: string): boolean; override;
end;
{$endif read_interface}
{$ifdef read_implementation}
class function TDisplacerNode.ClassNodeTypeName: string;
begin
Result := 'Displacer';
end;
class function TDisplacerNode.URNMatching(const URN: string): boolean;
begin
Result := (inherited URNMatching(URN)) or
(URN = URNVRML97Nodes + ClassNodeTypeName);
end;
class function THumanoidNode.ClassNodeTypeName: string;
begin
Result := 'Humanoid';
end;
class function THumanoidNode.URNMatching(const URN: string): boolean;
begin
Result := (inherited URNMatching(URN)) or
(URN = URNVRML97Nodes + ClassNodeTypeName);
end;
class function TJointNode.ClassNodeTypeName: string;
begin
Result := 'Joint';
end;
class function TJointNode.URNMatching(const URN: string): boolean;
begin
Result := (inherited URNMatching(URN)) or
(URN = URNVRML97Nodes + ClassNodeTypeName);
end;
class function TSegmentNode.ClassNodeTypeName: string;
begin
Result := 'Segment';
end;
class function TSegmentNode.URNMatching(const URN: string): boolean;
begin
Result := (inherited URNMatching(URN)) or
(URN = URNVRML97Nodes + ClassNodeTypeName);
end;
class function TSiteNode.ClassNodeTypeName: string;
begin
Result := 'Site';
end;
class function TSiteNode.URNMatching(const URN: string): boolean;
begin
Result := (inherited URNMatching(URN)) or
(URN = URNVRML97Nodes + ClassNodeTypeName);
end;
procedure RegisterVRML97HAnimNodes;
begin
NodesManager.RegisterNodeClasses([
TDisplacerNode,
THumanoidNode,
TJointNode,
TSegmentNode,
TSiteNode
]);
end;
{$endif read_implementation}
|