Share My Creation PFDMaker - create, view or operate Process Flow Diagrams

PFDMaker is a suite of B4J Applications to create, view or operate Process Flow Diagrams (PFD).
Developed as a personal challenge (and for personal use) to create all kind of PFDs.
The main focus has been on Chemical Engineering diagrams, but evolving for Flowcharts and more to follow like Micro-controllers with sensors & actuators.
There are 4 applications:
* PFDCreator - create PFDs using objects drag & dropped on a canvas
* PFDViewer - view PFDs created by the PFDCreator
* PFDOperator - operate or control PFDs created by the PFDCreator
* PFDShaper- create shapes used by the PFDCreator (planned).

Screenshots PFDCreator, PFDViewer and PFDOperator.



Screenshot PFDCreator and simple example video.



Notes
Will share more information whilst progressing. Still a lot to accomplish and to test.

Source Code
Not planned to share. The development has taken quite a bit of time due to its complexity.
Feel free to reach out via PN in case interested in code or solutions used.
Created with B4J 10.0 (64Bit) and Java JDK 19.0.
CREDITS: Thanks for AsyncCanvas - During the development of PFDCreator encountered performance issues drawing on the B4XCanvas. Using AsyncCanvas with invalidate method solved it.

Last Change
20241024 - See POST #3. Update mainly PFDCreator. Highlights: added menu-bar, CLV shape selector, object properties enhanced, reworked B4X module structure, Draw mode Select.
20240903 - Early preview version shared on the B4J Forum.
 

Attachments

  • 1725357772670.png
    135.8 KB · Views: 792
  • 1725357849341.png
    221.8 KB · Views: 203
Last edited:

rwblinn

Well-Known Member
Licensed User
Longtime User
Update POST #1
Progress made mainly on the PFDCreator application.

Example video.

Highlights
  • Added classic menu-bar with structure file, copy, draw, tools and help actions.
  • Changed the customlistview Shapes to select (drop on the PFD Drawing Board) a shape from text to image. The images are created from an external shape definition file with JSON format which is also used to draw the shapes on the canvas PFD Drawing Board.
  • Re-worked the B4X module structure. Each shape type i.e. Basic, Flowchart, PID (or others) have a dedicated code module with drawing methods. All shapes are drawn using the canvas draw methods, esp. B4XPath. Challeging have been shapes using arc's or bezier curves.
  • Added shapes. Note: Started to use ChatGPT to create shapes on the canvas - interresting how code generation evolves in iterations = some are good, some are bad.
  • Object properties added and redesigned the form layout. Properties are used depending shape.
  • Added draw mode Select to select & move multiple objects (using arrow buttons).
Next
  • PFDCreator: Not planned further enhancements for now, but focus on testing & bug fixing. May be some shapes.
  • PFDViewer: Completed.
  • PFDOperator: Enhance controls (ON/OFF, Slider, PV/SP ...), create simulation model, consider integrating charts for trends.
  • PFDShaper: Planned for later.
 
Last edited:
Cookies are required to use this site. You must accept them to continue using the site. Learn more…