Comments (9)
Example of icons
from pyramid.
These actions modify the elevation property but not always.
Bloc store the children elements in an ordered collction.
The drawing sequence is done by drawing the element with thehighest elevation.
In case of a conflict, two elements with the same elevation, bloc will draw first the element with the smallest index of the list (i.e. the element added first).
The Pyramid command (Top, Up, Down, Bottom) will try to change the order of the elements in the list to modify the drawing sequence but there are some cases where it also need to change the elevation.
For example:
All three squares belong to the same parent.
- Red has an elevation of 0 and is first in the ordered collection.
- Blue has an elevation of 1 and is second in the ordered collection.
- Green has an elevation of 2 and is last in the ordered collection.
If i send the command "send up" to Green, The Green elevation will change from 1 to 2 (To be on the same level as Blue), and will switch it's position with Blue in the collection to be render after Blue.
Personally i found very confusing to have two differents systems to represent the drawing sequence (elevation, and order in the list).
from pyramid.
Plus in the example,
If we now use the command "send down" to Green, Green will just swap position with Blue, but keep it's elevation at 2.
We loose the information about the elevation.
from pyramid.
I see elevation more has a sort of group of "drawing sequence" and the order in the collection has the "drawing sequence" but it is really confusing.
from pyramid.
Thanks @Nyan11 for your feedback. If I understood the "z" order property is different than the "elevation" property which is the order in the child list ?
from pyramid.
Z index = BlElevation
The drawing sequence follows the rules:
-
The children are drawn on top of their parent.
-
The child with the highest z index (or elevation) is drawn on top of the other children.
-
If multiples elements have the same z index, then the children index is taken into account.
You have two differents properties to change the drawing sequence:
The elevation (z index or BlElevation) and the index position in the parent's children collection.
from pyramid.
Ok great ! So we need to be very clear on what we edit.
First I want to edit the order : this is most basic case (for 2D library): the paint order in a tree branch (parent).
Second, I want to edit the z index, this is most used in 3D library but usefull for us.
The difficulty is to present a clear state of these two property to identity bugs or problems.
from pyramid.
If z value = 0: don't cannot display it in the cell.
4 options:
- Put on background
- Move backward
- Move forward
- Put on foreground
from pyramid.
ok with 124
from pyramid.
Related Issues (20)
- Bug when trying to edit a window with F12: hostSpace was sent to nil HOT 2
- Update color picker
- Reset space : is it necessary HOT 2
- Suggestion: a more horizontal layout HOT 4
- Error when starting morphic BlSpace HOT 2
- Add version control on Pyston
- Stamps and ids for toplo + stylesheet theme
- Fix layout bug on multi selection HOT 1
- Deprecate PyramidInputPresenter >> #strings in favor of #inputModel
- Add plugin copy/paste to manage OS clipboard input/output HOT 2
- Property: Opacity on background HOT 3
- Property: weight on Constraints
- Change the scale of the edition canvas
- Implement UI to edit BlElement transformations (matrix)
- Update readme to precise that Pyramid can be use with Toplo HOT 1
- Library to create Bloc elements & Toplo widgets HOT 3
- Cannot compare ToTheme in the theme selector HOT 6
- `Proportionnal` classes should be renamed `Proportional`
- Add the possibility to NOT install the plugins HOT 2
- Be able to move children from one parent to another one
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pyramid.