Utiliser les index de connexion pour connecter des formes
Contents
[
Hide
]
Ajouter de nouvelles connexions sur la forme et utiliser des index de connexion pour connecter les formes
Aspose.Diagram for Java API aide les développeurs à ajouter de nouveaux points de connexion sur la forme, et les développeurs peuvent désormais connecter des formes avec des index de connexion.
Utiliser les index de connexion pour connecter des formes
Le membre connectShapesViaConnectorIndex exposé par lePageLa classe peut être utilisée pour connecter des formes à l’aide d’index de connexion. Le code suivant montre comment connecter des formes :
- Initialiser un nouveau dessin.
- Placez quatre formes rectangulaires
- Ajoutez deux points de connexion supplémentaires, de sorte qu’il y aurait trois points de connexion sur la ligne de bordure inférieure
- Connectez la première forme de chaque connexion inférieure aux trois autres formes rectangulaires du haut avec des connecteurs dynamiques
- Enregistrer le dessin
utiliser des index de connexion pour connecter des formes Exemple de programmation
Utilisez le code suivant dans votre application Java pour connecter des formes avec des index de connexion avec Aspose.Diagram for Java API.
Java
// initialize a new drawing
Diagram diagram = new Diagram();
// get page by index
Page page = diagram.getPages().get(0);
// add masters
String connectorMaster = "Dynamic connector", rectangle = "Rectangle";
int pageNumber = 0;
double width = 2, height = 2, pinX = 4.25, pinY = 9.5;
diagram.addMaster("C:\\temp\\Basic Shapes.vss", rectangle);
diagram.addMaster("C:\\temp\\Basic Shapes.vss", connectorMaster);
// add shapes
long shape1_ID = diagram.addShape(4.5, 7, rectangle, pageNumber);
long shape2_ID = diagram.addShape(2.25, 4.5, rectangle, pageNumber);
long shape3_ID = diagram.addShape(4.5, 4.5, rectangle, pageNumber);
long shape4_ID = diagram.addShape(6.75, 4.5, rectangle, pageNumber);
// get shapes by ID
Shape shape1 = page.getShapes().getShape(shape1_ID);
Shape shape2 = page.getShapes().getShape(shape2_ID);
Shape shape3 = page.getShapes().getShape(shape3_ID);
Shape shape4 = page.getShapes().getShape(shape4_ID);
// add two more connection points
Connection connection1 = new Connection();
connection1.getX().getUfe().setF("Width*0.33");
connection1.getY().getUfe().setF("Height*0");
Connection connection3 = new Connection();
connection3.getX().getUfe().setF("Width*0.66");
connection3.getY().getUfe().setF("Height*0");
connection1.setIX(shape1.getConnections().add(connection1));
connection3.setIX( shape1.getConnections().add(connection3));
// add connector shapes
Shape connector1 = new Shape();
Shape connector2 = new Shape();
Shape connector3 = new Shape();
long connecter1Id = diagram.addShape(connector1, connectorMaster, 0);
long connecter2Id = diagram.addShape(connector2, connectorMaster, 0);
long connecter3Id = diagram.addShape(connector3, connectorMaster, 0);
// connect shapes by index of conneecting points
page.connectShapesViaConnectorIndex(shape1.getID(), 6, shape2.getID(), 3, connecter1Id);
page.connectShapesViaConnectorIndex(shape1.getID(), 1, shape3.getID(), 3, connecter2Id);
// save drawing
diagram.save("C:\\temp\\Drawing1_out.vsdx", SaveFileFormat.VSDX);