https://github.com/rwbl/pfdmaker
PFDMaker is a suite of B4J applications to create, view or operate Process Flow Diagrams (PFD).
https://github.com/rwbl/pfdmaker
b4j b4x javafx pfd
Last synced: 3 months ago
JSON representation
PFDMaker is a suite of B4J applications to create, view or operate Process Flow Diagrams (PFD).
- Host: GitHub
- URL: https://github.com/rwbl/pfdmaker
- Owner: rwbl
- License: gpl-3.0
- Created: 2024-12-20T16:15:40.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-20T17:06:55.000Z (about 1 year ago)
- Last Synced: 2025-02-13T21:37:01.726Z (11 months ago)
- Topics: b4j, b4x, javafx, pfd
- Homepage:
- Size: 472 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# PFDMaker
**PFDMaker** is a suite of [B4J](https://www.b4x.com/b4j.html) applications to create, view or operate **P**rocess **F**low **D**iagrams (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 like **Electrical** shapes.
There are 4 applications:
* **PFDCreator** - create PFDs using objects drag & dropped on a canvas (completed v1).
* **PFDViewer** - view PFDs created by the PFDCreator (development in progress).
* **PFDOperator** - operate or control PFDs created by the PFDCreator (development in progress).
* **PFDShapeMaker** - create object shapes used by the PFDCreator (development not started).

🚧 The **PFDMaker** developments are in progress, but decided to share the source code of the B4J project **PFDCreator**.
The source code of this B4J project can found in the archive pfdcreator.zip and it requires the [B4J](https://www.b4x.com/b4j.html) to run.
Read next.
***
## PFDCreator
An application to create all kind of simple **P**rocess **F**low **D**iagrams (PFDs) using objects (shapes) which are dragged & dropped on a Drawing Board (Canvas).
A PFD contains objects which are shapes with properties.
The properties define the object shape position, size, colors, text & format, but also its value, unit, operate flag and more.
There are a number of predefined shapes, the basic shapes but also dedicated shape types to create flowcharts, process instrumentation & piping diagrams or electrical circuits.
Several Screenshots
#### Main Page

#### Shape Types with Shapes

#### Resize Object and Show Index

#### B4XDialog Examples

### PFD Shape Types
The PFDCreator has initially following shape types:
* **Basic** - Common shapes which can be used by all PFD types.
* **Flowchart** - Shapes, like terminator, process, decision used to create flowcharts.
* **PID** - Shapes for Process Instrumentation & Piping (PID) diagrams.
* **Electrical** - Shapes to create electrical circuit diagrams.
**Notes**
* The PFDCreator application is provided as a B4J project with source code which requires [B4J](https://www.b4x.com/b4j.html) to run (Windows).
* The PFDCreator has been evolved from the idea to create simple PIDs. The application has become rather complex and has room for improvements.
* The included predefined shapes, created as methods use different ways to draw on the canvas. This is because evolving how to draw shapes. Considering using B4XPath as method only.
* To enhance the PFDCreator with more shape types and shapes, lookup the development notes (DEVNOTES.md).
* This B4J project is provided AS-IS and be aware that developments are ongoing which might lead to concept or code changes.
### Source Code
The source code of the B4J Project **PFDCreator** is included.
Created with B4J v10.0 (64 bit), Java JDK 19.0.2.
Internal libraries: jCore, jFX, B4XPages, XUI Views, Json, DesignerUtils, ByteConverter, BCTextEngine.
Additional libraries: [AsyncCanvas](https://www.b4x.com/android/forum/threads/asynccanvas-b4xcanvas-wrapper-with-invalidate-for-b4j.148736/), [jReflection](https://www.b4x.com/android/forum/threads/jreflection-library.35448/).
**Installation**
Unzip pfdcreator.zip to a folder of choice.
Copy the files from the AdditionalLibraries folder to the B4J Additional libraries folder.
Load PFDCreator.b4j in the B4J IDE.
### Documentation
* DEVNOTES.MD - Comprehensive information about the PFDCreator concept, development and how to enhance.
* TODO.md - Actions for the next version.
* IDEAS.md - Ideas to be considered for implemention.
* CHANGELOG.md - Log of version changes.
* PFDCreator.hlp - User guide.
### Video
A [video](https://1drv.ms/v/s!AhNDg9iSqrdPwNU1YZQVEQ1bd0BCnA) demonstrates how to create a very simple flowchart using the PFDCreator.
## PFDViewer (development in progress)
View PFDs created by the PFDCreator.
## PFDOperator (development in progress)
Operate or control PFDs created by the PFDCreator.
## PFDShapeMaker (development not started
Create object shapes used by the PFDCreator.
## Licence
GNU General Public License v3.0 - Developed for personal use only. See file LICENSE.
## Credits
To [Anywhere Software](https://www.b4x.com) and the [B4X Community](https://www.b4x.com/android/forum/) for sharing libraries, hints&tips.