Buat Flowchart Java

Bagan alir dapat membantu untuk memahami algoritme langkah demi langkah untuk merancang representasi grafik alur kerja dan proses. Dalam beberapa skenario, Anda mungkin perlu membuat diagram alur untuk pemecahan masalah. Artikel ini membahas cara membuat diagram flowchart secara terprogram di Java.

Instal Java API untuk Membuat Diagram Flowchart

Anda dapat membuat diagram alur dengan menggunakan API Aspose.Diagram for Java. Ini mendukung pembuatan atau pengeditan file Visio di VSD, VSDX, dan [format yang didukung] lainnya 2. Anda dapat menginstal API dengan mudah dengan mengunduh file JAR dari bagian Rilis Baru, atau menggunakan spesifikasi Maven berikut:

Gudang:

 <repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>http://repository.aspose.com/repo/</url>
    </repository>
</repositories>

Ketergantungan:

 <dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-diagram</artifactId>
        <version>22.1</version>
        <classifier>jdk16</classifier>
    </dependency>
</dependencies>

Membuat Flowchart Secara Programatik di Java

Anda dapat membuat diagram alur untuk menjelaskan langkah-langkah urutan. Anda perlu mengikuti langkah-langkah di bawah ini untuk membuat diagram alur:

  1. Pertama, buat skema untuk membuat diagram.
  2. Kedua, muat file VSS sebagai master untuk menambahkan bentuk. menggunakan kelas Diagram.
  3. Menambahkan bentuk dan konektor dari skema.
  4. Tetapkan tata letak untuk diagram diagram alur.
  5. Terakhir, tulis file keluaran dengan diagram alur dalam format VSDX menggunakan metode Save.

Contoh kode di bawah ini menjelaskan cara membuat diagram alur secara terprogram di Java:

// Buat diagram baru 
int pageNumber = 0;
String rectangleMaster = "Process", decisionMaster = "Decision", connectorMaster = "Dynamic connector"; 

Diagram diagram = new Diagram("XANFLOWCHARTNEW.vss"); 

double width = 1, height = 1, pinX = 4, pinY = 10; 
long process1 = diagram.addShape(pinX, pinY, width, height, rectangleMaster, 0); 
Shape processShape1 = diagram.getPages().getPage(pageNumber).getShapes().getShape(process1); 

processShape1.getText().getValue().add(new Txt("PROCESS")); 
processShape1.setName("PROCESS"); 
processShape1.getXForm().getLocPinX().getUfe().setF("Width*0.5"); 
processShape1.getXForm().getLocPinY().getUfe().setF("Height*0.5"); 

pinY = pinY - 2; 

long decision1 = diagram.addShape(pinX, pinY, width, height, decisionMaster, 0);
Shape decisionShape1 = diagram.getPages().getPage(pageNumber).getShapes().getShape(decision1);

decisionShape1.getText().getValue().add(new Txt("DECISION")); 
decisionShape1.setName("DECISION"); 
decisionShape1.getXForm().getLocPinX().getUfe().setF("Width*0.5"); 
decisionShape1.getXForm().getLocPinY().getUfe().setF("Height*0.5"); 

pinY = pinY - 2; 
long process2 = diagram.addShape(pinX, pinY, width, height, rectangleMaster, 0); 
Shape processShape2 = diagram.getPages().getPage(pageNumber).getShapes().getShape(process2);

processShape2.getText().getValue().add(new Txt("PROCESS")); 
processShape2.setName("PROCESS");
processShape2.getXForm().getLocPinX().getUfe().setF("Width*0.5");
processShape2.getXForm().getLocPinY().getUfe().setF("Height*0.5"); 

pinY = pinY - 2; 
long process3 = diagram.addShape(pinX, pinY, width, height, rectangleMaster, 0);
Shape processShape3 = diagram.getPages().getPage(pageNumber).getShapes().getShape(process3);

processShape3.getText().getValue().add(new Txt("PROCESS")); 
processShape3.setName("PROCESS");
processShape3.getXForm().getLocPinX().getUfe().setF("Width*0.5");
processShape3.getXForm().getLocPinY().getUfe().setF("Height*0.5"); 

pinY = pinY - 2; 
long process4 = diagram.addShape(pinX, pinY, width, height, rectangleMaster, 0);
Shape processShape4 = diagram.getPages().getPage(pageNumber).getShapes().getShape(process4);

processShape4.getText().getValue().add(new Txt("PROCESS")); 
processShape4.setName("PROCESS");
processShape4.getXForm().getLocPinX().getUfe().setF("Width*0.5");
processShape4.getXForm().getLocPinY().getUfe().setF("Height*0.5"); 

long connecterId = diagram.addShape(new Shape(), connectorMaster, 0);
diagram.getPages().getPage(pageNumber).connectShapesViaConnector(process1, ConnectionPointPlace.BOTTOM, 
        decision1, ConnectionPointPlace.TOP, connecterId); 

long connecterId1 = diagram.addShape(new Shape(), connectorMaster, 0);
diagram.getPages().getPage(pageNumber).connectShapesViaConnector(decision1, ConnectionPointPlace.BOTTOM,
        process2, ConnectionPointPlace.TOP, connecterId1); 

long connecterId2 = diagram.addShape(new Shape(), connectorMaster, 0);
diagram.getPages().getPage(pageNumber).connectShapesViaConnector(process2, ConnectionPointPlace.BOTTOM,
        process3, ConnectionPointPlace.TOP, connecterId2); 

long connecterId3 = diagram.addShape(new Shape(), connectorMaster, 0);
diagram.getPages().getPage(pageNumber).connectShapesViaConnector(process3, ConnectionPointPlace.BOTTOM,
        process4, ConnectionPointPlace.TOP, connecterId3); 

long connecterId4 = diagram.addShape(new Shape(), connectorMaster, 0);
diagram.getPages().getPage(pageNumber).connectShapesViaConnector(decision1, ConnectionPointPlace.RIGHT,
        process4, ConnectionPointPlace.TOP, connecterId4);

// Setel opsi tata letak otomatis
LayoutOptions layoutOptions = new LayoutOptions();

// metode 
layoutOptions.setLayoutStyle(LayoutStyle.FLOW_CHART);
layoutOptions.setDirection(LayoutDirection.BOTTOM_TO_TOP);
diagram.layout(layoutOptions);

DiagramSaveOptions options = new DiagramSaveOptions(SaveFileFormat.VSDX);
diagram.save("sample.vsdx", options);

Contoh Pratinjau Bagan Alir Keluaran

Flowchart Pembuat Pembuat Java

Selain itu, Anda mungkin ingin mengunduh file input dan output untuk memeriksa fitur ini.

Dapatkan Lisensi API Gratis

Anda dapat mengevaluasi semua fitur API tanpa batasan apa pun dengan meminta lisensi sementara gratis.

Kesimpulan

Kesimpulannya, Anda telah mempelajari cara membuat atau membuat flowchart secara terprogram menggunakan Java. Anda dapat menyesuaikan dan mengubah arah atau bentuk diagram alur sesuai kebutuhan Anda. Jadi Anda dapat dengan mudah menyematkan fitur ini menggunakan panggilan API dari dalam aplikasi Java Anda. Selain itu, Anda dapat mengunjungi [dokumentasi] API8 untuk memeriksa beberapa fitur API lainnya. Anda dapat mengajukan pertanyaan apa pun dengan menghubungi forum.

Lihat juga