Pergunta

Eu tenho usado Jointjs diagramação biblioteca do meu projeto.

1) Estou curioso para saber se ele oferece alguma forma de restringir os utilizadores a não brincar com os elementos do diagrama.O que eu quero dizer é:um usuário deve ser capaz de ver o diagrama como uma imagem em vez de interagir com ele, como redimensionamento, mudança de posição, arrastando links, etc.

2) Meu aplicativo está dependendo mal.Apesar de eu ter resolvido o problema de layout automático, mas é que isso é possível com Jointjs, podemos apenas dizer que a lib que nós queremos que esses elementos e coisas e, por favor, ajudar-nos a tornar o diagrama mais adequado, não colidindo elementos e com um número mínimo de ligações colidindo uns com os outros e com os elementos em seu caminho, se os links são linhas retas contínuas ?

3) Por último, quero saber se podemos verificar links colidir com outros elementos ou com outros links no mesmo diagrama.Eu sei que é possível no caso de elementos.

if (element1.getBBox().intersect(element2.getBBox())) {
    // elements intersect
}
Foi útil?

Solução

1) Use um new joint.dia.Paper({ interactive: false, ... }) ou conjunto de ponteiro-eventos propriedade CSS para nenhum directamente no papel: paper.$el.css('pointer-events', 'none')

2) Você pode usar o comum.layout.DirectedGraph plugin.Este plugin está disponível para download aqui: http://jointjs.com/download e um post de blog descrevendo é aqui: http://www.daviddurman.com/automatic-graph-layout-with-jointjs-and-dagre.html.

3) Isso não é, em geral, fácil.Gostaria de indicar a você este site para um exemplo de computação intersecção entre dois caminhos: http://www.kevlindev.com/geometry/2D/intersections/intersect_bezier2_bezier2.svg.Aqui é a biblioteca para fazer o download: http://www.kevlindev.com/gui/math/intersection/index.htm

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top