Lama
  • LayerManager
  • Fundamentals
    • 📖Main concepts
      • LamaBase
      • LamaData
        • LamaTables
        • LamaCategories
        • LamaView
      • LamaFile
      • LamaDoc
    • 🖥️UI overview
    • 📐Principles
    • ➕LamaExtensions
  • User Manual
    • 🚀Get started
    • 💡How to...
      • General
        • Start/ Stop Lama
        • Create Models/Projects
        • Create templates
        • Connect LamaProject
        • Save LamaFile
        • Version recovery
        • Add a license
      • Management
        • Vert./horiz. panel
        • Create elements
        • Create LamaTables
        • Create attributes
        • Create categories
        • Use table trees
        • Use multiple columns
        • Use object relations
      • Visualization
        • Activate layers
        • Show layers
      • Analysis
        • Create view
        • Modify view
        • Create validation rule
        • Use views
      • Transfer
        • LamaTables
        • LamaView
    • 📄Commands
  • Developer Manual
    • 🚀Get started
    • 💡How to...
      • Install plugin
      • Install toolbar
      • Publish plugin
    • 📑Resources
    • 🔗Compatibility
  • Feedback
  • Apps by Fritz Beck.
Powered by GitBook
On this page
  • 1) Rhino binding
  • 2) Attributes
  • 3) Matching
  1. Fundamentals
  2. Main concepts
  3. LamaData

LamaTables

Last updated 1 year ago

LamaTables store the semantic data. There are five major types of LamaTables: ElementTable, DropdownTable, BoolTable, TextTable and NumberTable.

LamaTables have several characteristics that differ from "normal" tables:

1) Rhino binding

A LamaTable is closely related to Rhino. In this regard, there are two different types of LamaTables: - RhinoTables which are related to geometrical rhino objects (ElementTable) - LayerTables which are related to rhino layers (all other tables)

RhinoTables (=> Rhino objects)
LayerTables (=> Rhino layers)

ElementTable

DropDownTable

BoolTable

TextTable

ValueTable

In more detail, the rows of a LamaTable belong to rhino objects (RhinoRow) or layers (LayerRow) respectively. In such kind of row, the rhino object or layer is referenced through its ID stored in the ObjectId column. Additionally, LayerRows store the name, color and visibility of the respective layer.

2) Attributes

An attribute of a LamaTable is an additional column (beyond the basic structure of the table). An additional column can be described bz the Column type, UI behaviour, and Multiple setting.

+ Column type: An additional column is either a ClassColumn or a LeafColumn.

A ClassColumn is created by relating to a another LamaTable. This is how LamaTable trees can be created.

LeafColumns allow to create attributes without creating LamaTables. Leaf columns aim to keep the number of LamaTables low.

Once the column is created, the column type cannot be changed.

+ UI behaviour: The ClassColumns and LeafColumns belong to different UI behaviour depending on the data type.

For LeafColumns the data type can be set manually.

For ClassColumns the data type depends on the related LamaTable (Hint: That's where the names of the tables come from).

ClassColumn (Pros)
LeafColumn (Pros)

+ Support deep table tree

+ Reduces the no. of LamaTables

+ Dropdown UI behaviour (DropDownTable)

+ Relations to geometrical rhino objects (RhinoTable)

+ Values can be visualized through Layers (LayerTable)

+ Multiple setting: Both ClassColumns and LeafColumns can be set as multiple (so that several values can be represented in one cell).

The attributes must be assigned to a LamaCategory. LamaCategories allow to structure your attributes.

3) Matching

A LamaTable covers matching criteria against which an attribute value can be evaluated to identify the row the attribute value belongs to.

Returns the first row, where the attribute value directly matches the value of the column "ObjectId".

Returns the first row, where the attribute value directly matches the value of the column [Table name].

Returns the first row, where the attribute value directly matches the value of the column [Table name].

Returns the first row, where the attribute value contains the value of the column "Text".

Returns the first row, where the attribute value is in the range between the values of the columns "Min" and "Max".

LamaTable
Matching rule
Matching column

Element

direct match

ObjectId

Dropdown

direct match

[Table name]

Bool

direct match

[Table name]

Text

contains

Text

Number

between min. and max.

Min, Max

The layer of an attribute value can be identified through the matching criteria (since a row of a LayerTable belongs to a layer).


📖
Create LamaTables
Create attributes
Use table trees