Junction Diagram Automation Suite 1.5.1
An AutoCAD 2024 plugin for the manipulation and generation of junction box wiring diagrams
Loading...
Searching...
No Matches
JBox.h
Go to the documentation of this file.
1
12
13#pragma once
14
15#include "common.h"
16#include "helpers.h"
17#include "Cable.h"
18
20 AcGePoint3d drawPoint;
21 int terminal = 0;
22 int renderedTerminal = 0;
23 int tableNumber = 1;
24 bool flip = false;
25};
26
35class JBox {
36public:
43 JBox(std::string tag, std::vector<Cable> cables);
44
55 int GetLeftoverTerminals(BoxSize boxSize) const;
56
62 std::string GetTag() const;
63
71 void Draw(BoxSize boxSize, AcGeVector3d origin);
72private:
73 std::string tag;
74 std::vector<Cable> cables;
75
76 int safetyCableFootprint = 0;
77
100 void UpdateDrawContext(Cable cable, BoxSize boxSize, DrawContext &context) const;
101};
Interface for the Cable class.
Represents a cable with specific attributes and devices connected to it.
Definition Cable.h:61
std::string GetTag() const
Gets the tag identifier of the junction box.
Definition JBox.cpp:69
int GetLeftoverTerminals(BoxSize boxSize) const
Calculates the number of leftover terminals for a given box size.
Definition JBox.cpp:31
JBox(std::string tag, std::vector< Cable > cables)
Constructs a new JBox object.
Definition JBox.cpp:18
void Draw(BoxSize boxSize, AcGeVector3d origin)
Draws the junction box (function stub).
Definition JBox.cpp:73
Common includes and definitions.
BoxSize
Predefined enclosure footprints supported by the tool.
Definition common.h:45
Interface for helper functions related to database operations.
Definition JBox.h:19