====== WebSSPHH RESTful Service ====== [[start]] ===== WebSSPHHService ===== ''service.php'' | parameter | data type | values | definition | | a | string| s\\ u\\ i\\ d | SELECT RECORD (works with GET or POST)\\ UPDATE RECORD (works with POST only) \\ INSERT RECORD (works with POST only) \\ DELETE RECORD (works with GET or POST | | token | string | [\w\d]+ | A security token allowing authorized users only | | projects | none | none | Returns a JSON array of projects | | scenes | none | none | Returns a JSON array of scenes in the current project. This requires the ''project'' parameter to be set | | objects | none | none | Returns a JSON array of objects in the current project. This requires the ''project'' parameter to be set | | sobjects | none | none | Returns a JSON array of objects in the current scene. This requires the ''scene'' parameter to be set. | | project| number | 1 - 1048576 | Returns a JSON object with the project properties | | scene | number | 1 - 1048576 | Returns a JSON object with the scene properties. This requires the ''project'' parameter to be set. | | object | number | 1 - 1048576 | Returns a JSON object with the object properties. This requires the ''project'' parameter to be set.| ===== Schemas ===== ==== Projects ==== "projects" : [ { "id" : number, "name" : string }, // Project { "id" : number, "name" : string }, // Project ... ] ==== Scenes ==== "scenes" : [ { "id" : number, "name" : string }, // Scene { "id" : number, "name" : string }, // Scene ... ] ==== Objects ==== "objects" : { { "id" : number, "name" : string, "type" : string }, // Object { "id" : number, "name" : string, "type" : string }, // Object ... } ==== Project ==== "project" : { "id" : number, // PK "name" : string, // Project Name "desc" : string, // Description "key1" : { "type" : string, "value" : json }, // Property 1 "key2" : { "type" : string, "value" : json }, // Property 2 ... } ==== Scene ==== "scene" : { "id" : number, // PK "name" : string, // Name of Scene "key1" : { "type" : string, "value" : json }, // Property 1 "key2" : { "type" : string, "value" : json }, // Property 2 ... } ==== Object ==== The types of objects are * ''camera'' * ''environment'' * ''pointlight'' * ''mesh'' * ''sphere'' * ''mtllib'' * ''renderconfig'' "object" : { "id" : number, // PK "name" : string, // Name of the object "type" : string, // Type of the object "key1" : { "type" : string, "value" : json }, // Property 1 "key2" : { "type" : string, "value" : json }, // Property 2 ... } ===== Common Types of Properties ===== ==== Special Types ==== ^Typename ^JSON | | ''string'' | ''string'' | | ''integer''| ''integer''| | ''double'' | ''double'' | | ''AffineMatrix4'' | ''[a11, a12, a13, a14,\\ a21, a22, a23, a24,\\ a31, a32, a33, a34]'' | | ''Matrix2'' | ''[a11, a12, a21, a22]'' | | ''Matrix3'' | ''[a11, a12, a13,\\ a21, a22, a23,\\ a31, a32, a33]'' | | ''Matrix4'' | ''[a11, a12, a13, a14,\\ a21, a22, a23, a24,\\ a31, a32, a33, a34,\\ a41, a42, a43, a44]'' | | ''Matrix2x3'' | ''[a11, a12,\\ a21, a22,\\ a31, a32]'' | | ''Matrix2x4'' | ''[a11, a12,\\ a21, a22,\\ a31, a32,\\ a41, a42]'' | | ''Matrix3x2'' | ''[a11, a12, a13,\\ a21, a22, a23]'' | | ''Matrix3x4'' | ''[a11, a12, a13,\\ a21, a22, a23,\\ a31, a32, a33,\\ a41, a42, a43]'' | | ''Vector2'' | ''[x, y]'' | | ''Vector3'' | ''[x, y, z]'' | | ''Vector4'' | ''[x, y, z, w]'' | | ''Color3'' | ''[r, g, b]'' | | ''Color4'' | ''[r, g, b, a]'' | | ''Quaternion'' | ''[a, b, c, d]'' | ==== Normal Types ==== === Object === ^Typename ^JSON/Type | | ''worldMatrix'' | ''Matrix4'' | | ''usemtl'' | string | | ''mesh'' | string | === Point Light === ^Typename ^JSON/Type | | ''worldMatrix'' | ''Matrix4'' | | ''position'' | ''Vector4'' | | ''radius'' | number | | ''E0'' | ''Color3'' |