ladybug-tools / ladybug-blender

:beetle: :orange_book: Ladybug plugin for Blender
GNU General Public License v3.0
46 stars 9 forks source link

Legend parameters should support Sverchok colours, base plane, and font #12

Open ppaawweeuu opened 4 years ago

ppaawweeuu commented 4 years ago
  1. Legend has always 11 colors, i found it strange.
  2. If i set in 'LB Analysis Period' 'start hour'=7 and 'end hour'=17 i expect 10 hours analysis, not 11 hours (see legend numbers)

direct_sun_hours

  1. There are few legends, one for every object.

legends

  1. 'LB Analysis Period', not sure what 'timestep' means. Can't be float (0,5). If grater than 1 -> creates too many hours per day.

hours

Moult commented 4 years ago
  1. This is a decision made by ladybug tools itself. I suspect there are good reasons for this default. Perhaps for consistency across multiple analysis is my guess. However, it is possible to change by inserting an LB Legend Parameters node.

    1. See answer to (1)

    2. Looks like a bug! Will have to investigate.

    3. https://github.com/ladybug-tools/ladybug-grasshopper/blob/master/ladybug_grasshopper/json/LB_Analysis_Period.json#L73-L77

mostaphaRoudsari commented 4 years ago
  1. Unless you merge all the input meshes the component creates a separate legend for each input mesh. This is not a bug! :)
ppaawweeuu commented 4 years ago
  1. timestep thanks, reading json files was very informative. I got why there is conversation about implementing tooltips. It could be very helpful. / sv issue about tooltips and all grashopper jsons / I must use the same timestep value in both nodes, and was need to do it (link) becouse #4

timestep

ppaawweeuu commented 4 years ago
  1. blender doesnt have components :) there is just need to join meshes from objects and create new object, i guess.
portnov commented 4 years ago

Grasshopper's "component" == Blender's Node :)

ppaawweeuu commented 4 years ago

1, Legend, ok, legends can be parametrized. 11 is default. Descriptions from json were crucial to understand.

legends2

colors_ , baseplane , fonts_ - have no idea how feed that sockets. continous_leg - i think it will be difficult, maybe vertex colors to generate gradients (probably the least important feature) bool sockets - i tried typing 'True', 'False', 1, 0 - not working. works only with external logic node.

ppaawweeuu commented 4 years ago
  1. There must be some good reasons, i guess.
Moult commented 4 years ago

Bool sockets fixed.

The colour range node can be used to edit colours. I'm not sure if there is an alternative. Ping @mostaphaRoudsari and @chriswmackey .

2020-10-06-112344_606x318_scrot

Vertex colours now implemented, so continuous legends work (keep in mind you need to be a mode that displays vertex colours - so either switch to vertex colour mode in workbench, or switch to material preview / rendered mode).

2020-10-06-112032_412x274_scrot

Fonts and base plane is not yet supported. Will add to the to-do list.

mostaphaRoudsari commented 4 years ago

The colour range node can be used to edit colours. I'm not sure if there is an alternative.

If I'm not mistaken the output of the color range node is simply a list f colors. Even if it is not you can create your own colorrange using a list of colors as needed.

My bad about using the term component. Whenever I write component I actually mean node.

ppaawweeuu commented 4 years ago

Ok, color range is integer and means 1 of 27 predefinied gradients or legend styles.

GIF 2020-10-06 20-50-31

ppaawweeuu commented 4 years ago

@mostaphaRoudsari @Moult - how we can create custom colorrange? I expected something like that will be ok:

colors

LB Color Range generates that.. colors2

Moult commented 4 years ago

The LB Color Range node outputs a list of Ladybug Color objects. They are not compatible with Sverchok colours at the moment. Adding to the to-do list.

Durman commented 4 years ago

Probably color ramp node can be useful 2020-10-07_08-29-00

ppaawweeuu commented 4 years ago

My bad about using the term component. Whenever I write component I actually mean node.

Ok. @Moult - implementing hover tooltips be aware that oryginal tooltips use component word.