{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://openeik.org/schemas/0.1/proposed/adopted/view-camera.schema.json",
  "$comment": "Proposed for OpenEik 0.2: Part II, 14.3, rule 6 (open questions, 115). Generated by tools/generate-schemas.mjs from the reference implementation at de6f0d04, as the schemas of 0.1 are, and not written by hand. In 0.1 it is a member the view schema does not know, kept; a validator holds it to this schema only when asked for the proposal (@openeik/tools: proposals [\"adopted\"]).",
  "title": "A 3D view's perspective camera",
  "description": "Where a 3D view's perspective camera stands and looks, position and target in mm in the model's axes, at least 1 mm apart, and its field of view, fov, in degrees (Part II, 14.3, rule 6, proposed for 0.2). A tool that shows or renders the view in perspective looks so; a sheet draws a 3D view by its orthographic camera.",
  "type": "object",
  "properties": {
    "position": {
      "type": "array",
      "minItems": 3,
      "maxItems": 3,
      "prefixItems": [
        {
          "type": "number"
        },
        {
          "type": "number"
        },
        {
          "type": "number"
        }
      ]
    },
    "target": {
      "type": "array",
      "minItems": 3,
      "maxItems": 3,
      "prefixItems": [
        {
          "type": "number"
        },
        {
          "type": "number"
        },
        {
          "type": "number"
        }
      ]
    },
    "fov": {
      "type": "number",
      "minimum": 10,
      "maximum": 120
    }
  },
  "required": [
    "position",
    "target",
    "fov"
  ],
  "x-eik-closed": true
}
