/usr/src/castle-game-engine-5.2.0/x3d/x3dloadinternalspine_json.inc is in castle-game-engine-src 5.2.0-3.
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 | {
Copyright 2014-2014 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.
----------------------------------------------------------------------------
}
{ JSON helpers. }
{$ifdef read_interface}
{$endif}
{$ifdef read_implementation}
procedure ReadVector2SingleList(const Json: TJSONObject; const Name: string;
const List: TVector2SingleList);
var
JsonArray: TJSONArray;
I: Integer;
Vec2: TVector2Single;
Vec2Index: Integer;
begin
JsonArray := Json.Find(Name, jtArray) as TJSONArray;
if JsonArray <> nil then
begin
Vec2Index := 0;
for I := 0 to JsonArray.Count - 1 do
if JsonArray[I] is TJSONNumber then
begin
Vec2[Vec2Index] := JsonArray[I].AsFloat;
Inc(Vec2Index);
if Vec2Index = 2 then
begin
List.Add(Vec2);
Vec2Index := 0;
end;
end;
if Vec2Index <> 0 then
OnWarning(wtMajor, 'Spine', 'Vector2 list (like uvs or vertices) ends in the middle of the vector');
end;
end;
procedure ReadLongIntList(const Json: TJSONObject; const Name: string;
const List: TLongIntList);
var
JsonArray: TJSONArray;
I: Integer;
begin
JsonArray := Json.Find(Name, jtArray) as TJSONArray;
if JsonArray <> nil then
for I := 0 to JsonArray.Count - 1 do
if JsonArray[I] is TJSONIntegerNumber then
List.Add(JsonArray[I].AsInteger);
end;
{$endif}
|