Skip to content

Instantly share code, notes, and snippets.

@veggiesaurus
Created November 8, 2020 19:31
Show Gist options
  • Save veggiesaurus/8818ff13135d2328bff3d0d729c3f667 to your computer and use it in GitHub Desktop.
Save veggiesaurus/8818ff13135d2328bff3d0d729c3f667 to your computer and use it in GitHub Desktop.
Mapping schema for iDaVIE particles
{
"$schema": "http://json-schema.org/draft-06/schema#",
"definitions": {
"ColorMap": {
"enum": [
"Accent",
"Afmhot",
"Autumn",
"Binary",
"Blues",
"Bone",
"BrBg",
"Brg",
"BuGn",
"BuPu",
"Bwr",
"CmRmap",
"Cool",
"Coolwarm",
"Copper",
"Cubehelix",
"Dark2",
"Flag",
"GistEarth",
"GistGray",
"GistHeat",
"GistNcar",
"GistRainbow",
"GistStern",
"GistYarg",
"GnBu",
"Gnuplot",
"Gnuplot2",
"Gray",
"Greens",
"Greys",
"Hot",
"Hsv",
"Inferno",
"Jet",
"Magma",
"NipySpectral",
"Ocean",
"Oranges",
"OrRd",
"Paired",
"Pastel1",
"Pastel2",
"Pink",
"PiYg",
"Plasma",
"PrGn",
"Prism",
"PuBu",
"PuBuGn",
"PuOr",
"PuRd",
"Purples",
"Rainbow",
"RdBu",
"RdGy",
"RdPu",
"RdYlBu",
"RdYlGn",
"Reds",
"Seismic",
"Set1",
"Set2",
"Set3",
"Spectral",
"Spring",
"Summer",
"Tab10",
"Tab20",
"Tab20B",
"Tab20C",
"Terrain",
"Viridis",
"Winter",
"Wistia",
"YlGn",
"YlGnBu",
"YlOrBr",
"YlOrRd"
],
"type": "string"
},
"RenderType": {
"enum": [
"Billboard",
"Line"
],
"type": "string"
},
"ShapeType": {
"enum": [
"Halo",
"Circle",
"OutlinedCircle",
"Square",
"OutlinedSquare",
"Triangle",
"OutlinedTriangle",
"Star"
],
"type": "string"
},
"ScalingType": {
"enum": [
"Linear",
"Log",
"Sqrt",
"Squared",
"Exp"
],
"type": "string"
},
"MapFloatEntry": {
"properties": {
"Clamped": {
"type": "boolean"
},
"MinVal": {
"type": "number"
},
"MaxVal": {
"type": "number"
},
"Offset": {
"type": "number"
},
"Scale": {
"type": "number"
},
"ScalingType": {
"$ref": "#/definitions/ScalingType"
},
"Source": {
"type": "string"
}
},
"required": [
"Source"
],
"type": "object"
},
"MappingUniforms": {
"type": "object",
"properties": {
"ColorString": {
"type": "string",
"pattern": "^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$",
"example": "#aa33cc"
},
"Scale": {
"type": "number"
},
"PointSize": {
"type": "number"
},
"Opacity": {
"type": "number"
},
"PointShape": {
"$ref": "#/definitions/ShapeType"
}
},
"additionalProperties": false
}
},
"properties": {
"ColorMap": {
"$ref": "#/definitions/ColorMap"
},
"Spherical": {
"type": "boolean"
},
"RenderType": {
"$ref": "#/definitions/RenderType"
},
"UniformColor": {
"type": "boolean"
},
"UniformPointSize": {
"type": "boolean"
},
"UniformOpacity": {
"type": "boolean"
},
"UniformPointShape": {
"type": "boolean"
},
"Uniforms": {
"$ref": "#/definitions/MappingUniforms"
},
"Mapping": {
"properties": {
"X": {
"$ref": "#/definitions/MapFloatEntry"
},
"Y": {
"$ref": "#/definitions/MapFloatEntry"
},
"Z": {
"$ref": "#/definitions/MapFloatEntry"
},
"X2": {
"$ref": "#/definitions/MapFloatEntry"
},
"Y2": {
"$ref": "#/definitions/MapFloatEntry"
},
"Z2": {
"$ref": "#/definitions/MapFloatEntry"
},
"Lat": {
"$ref": "#/definitions/MapFloatEntry"
},
"Lng": {
"$ref": "#/definitions/MapFloatEntry"
},
"R": {
"$ref": "#/definitions/MapFloatEntry"
},
"Cmap": {
"$ref": "#/definitions/MapFloatEntry"
},
"Opacity": {
"$ref": "#/definitions/MapFloatEntry"
},
"PointSize": {
"$ref": "#/definitions/MapFloatEntry"
},
"PointShape": {
"$ref": "#/definitions/MapFloatEntry"
}
},
"additionalProperties": false,
"type": "object"
},
"metaMapping": {
"properties": {
"Name": {
"properties": {
"Source": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"Source"
],
"type": "object"
}
},
"additionalProperties": false,
"type": "object"
}
},
"additionalProperties": false,
"required": [
"Mapping"
],
"type": "object"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment