netbox-community / netbox-topology-views

A netbox plugin that draws topology views
Apache License 2.0
744 stars 63 forks source link

Space Unique Sites Rectangles To Prevent Overlap When Viewing Region #494

Closed mr1716 closed 4 months ago

mr1716 commented 4 months ago

NetBox version

v3.7.8

Topology Views version

v3.9.1

Feature type

New functionality

Proposed functionality

This is an extension of Issue 329 released in 3.9.1, but is new functionality to automatically space rectangle boxes around unique sites when viewing regions so they dont overlap. Unless there is a map or map like positional information so the sites relate to each other, not entirely necessary to have overlapping

Use case

Currently, grouping is hard to use because it overlaps

External dependencies

No response

mr1716 commented 4 months ago

Pardon if this is already answered by another ticket

dreng commented 4 months ago

I'm afraid that I neither understand the use case nor the proposal itself. If you want rectangles around sites, turn that feature on. If you don't want rectangles to overlap, move device icons accordingly. The rectangles only follow the containing icons.

mr1716 commented 4 months ago

@dreng, the use case is when looking at Regions, I see that there can be overlapping boxes that I cannot move as shown in the photo below. When I try to move the site boxes to separate areas, it wont let me and returns the boxes to normal. The request is to separate the boxes for individual sites to prevent overlap by default image

dreng commented 4 months ago

Again, you generally don't move boxes at all. The boxes surround icons dynamically. You are thinking it the other way round.

So if you want to move a box then you need to move all its containing icons. To make this task easier you can do the following:

  1. Click the border of a certain box. All containing icons will be selected. Watch the labels become bold in order to make sure the icons have been selected. You may want to zoom in to make this task easier.
  2. Drag one of the selected icons. Don't wait too long between the click and drag start. Otherwise all icons will be deselected.
  3. Watch all selected icons move. The box around the icons will follow automatically.
mr1716 commented 4 months ago

@dreng is there a way to have it not overlap by default, rather than having to take the steps above? It really hampers usability

dreng commented 4 months ago

I think you still don't get the point. The system does not decide where to put the icons. You decide! There's only one exception: A physics engine decides initially where to put the icons because no fixed position exists at this point. The initial position of all icons depends on your network structure and some sort of coincidence. To put it another way: No, there is no way to have it not overlap by default, because it depends on the physics engine, your network and your personal preferences how to arrange things.

mr1716 commented 4 months ago

@dreng maybe you didn’t nor haven’t done the documentation before that post to clearly clarify enough so people wouldn’t have the question. Because it obviously wasn’t clear. The inability for it to not overlap in the beginning is a bummer. And said inability is really a limitation of the plugin

dreng commented 4 months ago

I understand your frustration, but there is no need to be offensive. Obviously you think you have the right to demand something. You're projecting your personal preferences onto all users and from that position you think you have a good idea. I can't help it if you don't understand the problem and see it as a limitation.

There are a few options:

  1. you actively participate in improving the product by contributing code or improving the obviously poor manual. You tried that and it was a good start. You only left out half of the necessary code and contributed a non-functioning (and obviously untested) version, which is not very helpful.

  2. you fork the project and do a better job.

  3. you use the product as it is.

  4. you simply don't use the product if it's that bad.