Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
component:hologram [2014/07/10 09:07]
vexatos
component:hologram [2017/11/05 07:19] (current)
breadbolt
Line 2: Line 2:
 ================== ==================
 This component is provided by the [[block:​hologram_projector|Hologram Projector]].  ​ This component is provided by the [[block:​hologram_projector|Hologram Projector]].  ​
-These can be used to create holographic projections in a resolution of 48x32x48, over a maximum area of 9x6x9 blocks. Holograms are defined via 48x48 32-bit bit masks, where each bit defines whether the voxel at that height should be on or off. Tier two holograms do not provide a higher resolution, instead they allow using up to three colors in the displayed hologram (as opposed to just one for the tier one hologram).+These can be used to create holographic projections in a resolution of 48x32x48, over a maximum area of 9x6x9 blocks. Tier two holograms do not provide a higher resolution, instead they allow using up to three colors in the displayed hologram (as opposed to just one for the tier one hologram).
  
 Component name: `hologram`.  ​ Component name: `hologram`.  ​
Line 13: Line 13:
 - `set(x:​number,​ y:number, z:number, value:​number or boolean)`  ​ - `set(x:​number,​ y:number, z:number, value:​number or boolean)`  ​
   Set the value for the specified position.   Set the value for the specified position.
-- `fill(x:​number,​ z:​number, ​height:number, value:​number)` ​  +- `fill(x:​number,​ z:number[minY:​number],​ maxY:number, value:​number)` ​  
-  Fills a column to the specified ​height ​with the specified value. ​All voxels below and including the specified height ​will be set, all voxels above will be unset.+  Fills an interval in the specified ​column column ​with the specified value. ​Will overwrite only the voxels in the interval. If `minY` is omitted it defaults to 1. The two interval ends are inclusive. ​  
 +  //Note:// Before 1.3.3 there was no `minY` argument and all voxels below and including the specified height ​would be set, all voxels above would be unset.
 - `copy(x:​number,​ z:number, sx:number, sz:number, tx:number, tz:​number)`  ​ - `copy(x:​number,​ z:number, sx:number, sz:number, tx:number, tz:​number)`  ​
   Copies an area of columns by the specified translation.   Copies an area of columns by the specified translation.
Line 21: Line 22:
 - `setScale(value:​number)`  ​ - `setScale(value:​number)`  ​
   Set the render scale. A larger scale consumes more energy. The minimum scale is 0.33, where the hologram will fit in a single block space, the maximum scale is 3, where the hologram will take up a 9x6x9 block space.   Set the render scale. A larger scale consumes more energy. The minimum scale is 0.33, where the hologram will fit in a single block space, the maximum scale is 3, where the hologram will take up a 9x6x9 block space.
 +- `getTranslation:​number,​ number, number`
 +  Return the current translation offset.
 +- `setTranslation(x:​number,​ y:number, z:number)`
 +  Set the translation vector. The hologram display will be offset by this vector from its normal location. The maximum allowable translation is a function of tier. Units are the hologram'​s size, so the distance translated increases and decreases with scale as well.
 - `maxDepth():​number`  ​ - `maxDepth():​number`  ​
   The color depth supported by the hologram.   The color depth supported by the hologram.
 - `getPaletteColor(index:​number):​number`  ​ - `getPaletteColor(index:​number):​number`  ​
-  Get the color defined for the specified value.+  Get the hex color defined for the specified value.
 - `setPaletteColor(index:​number,​ value:​number):​number`  ​ - `setPaletteColor(index:​number,​ value:​number):​number`  ​
-  Set the color defined for the specified value.+  Set the hex color defined for the specified value.
  
 Simple example program that allows setting individual voxels: Simple example program that allows setting individual voxels:
Line 40: Line 45:
  
 Further examples: Further examples:
 +
 - [Holo Flow](https://​github.com/​OpenPrograms/​Sangar-Programs/​blob/​master/​holo-flow.lua)  ​ - [Holo Flow](https://​github.com/​OpenPrograms/​Sangar-Programs/​blob/​master/​holo-flow.lua)  ​
   This program generates a heightmap and '​moves'​ across it over time, creating the effect of a flowing terrain.   This program generates a heightmap and '​moves'​ across it over time, creating the effect of a flowing terrain.