You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Arc walls: a wall's location line can be a circular arc. The wall tool gains Line/Arc modes in the options bar; in Arc mode click the start, the end and then a point on the arc (with a live preview, radius and length), and the chain goes on from the arc's end. Layers, faces and cut patterns follow concentric arcs; arc walls join straight and arc walls at corners, tees and junctions (faces meet where their lines and circles cross; walls continuing along a common tangent butt square), host doors and windows along the arc (offsets measured along the centerline, frames square to the wall at the opening), bound rooms and give floors and roofs drawn from walls their curve. Length, side area and volume are exact (along the centerline arc). Plans draw the arcs (radial and diameter dimensions pick them), and elevations, sections and 3D draw curved faces without seams between facets. Splitting keeps each part on the arc, offsetting makes a concentric copy, end handles and move, rotate, mirror and copy keep the arc; trimming, extending and aligning need straight walls. The properties show the arc angle (editable) and radius.
wall_create takes mid (a point on the arc) or bulge (tan of a quarter of the sweep); element_get shows bulge among a wall's params (editable with element_set) and the arc's center, radius and sweep among the derived values. Arcs too tight for the wall's thickness, and three points in line, are refused.
Roofs over any footprint: gable and hip roofs are computed as a weighted straight skeleton of the outline (sloped eaves rise at the roof's slope, gable edges stay vertical), so L, T, U and other concave outlines get proper hips, valleys and ridges, and gables can stand above a lower roof beside them. Plans draw the ridges, hips and valleys; 3D, elevations, sections, volumes and IFC export (faceted B-rep) use the computed planes.
Roof openings (courtyards): a roof can have openings inside its outline, around which pitched roofs slope down to their own eaves (the overhang reaches over them). The roof properties gain Openings with Add Opening (sketch it in the plan) and Remove Openings; roof_create takes holes, and element_set edits them (openings must lie inside the outline, apart). Flat and shed roofs are cut by them too; areas, volumes, schedules and IFC export (Qto_RoofBaseQuantities) leave them out. element_get reports a roof's plan_area and its ridges.
IFC import brings this program's pitched, flat and shed roofs back with their outline, openings and exact slope (from the B-rep's faces). CI validates a roof fixture.
IFC export writes an arc wall's axis as an IfcTrimmedCurve on an IfcCircle and its body as an extruded profile of arcs and lines (IfcIndexedPolyCurve), with its openings as sectors through the wall; import brings such walls back as arc walls with their doors and windows. CI validates an arc wall fixture.
Update notice: at startup, at most once a day and in the background, the app asks the GitHub API for the latest release and, when it is newer than the running version (pre-releases ignored), shows a notice in the status bar and on the home screen with Download (opens the release page in the browser), Skip This Version and dismiss. Nothing is downloaded or installed. File → Check for Updates (also in About) checks on request and reports the result. Automatic checks can be turned off in About, and CONSTRUCTCAD_NO_UPDATE_CHECK=1 turns every check off; failures are silent. See Update notice in the interface guide for what is contacted.
View graphics in the engine: per-view category visibility and overrides (projection and cut lines: color, weight, pattern; surface and cut fills: color, pattern; halftone; transparency), element overrides and hiding in one view, applied to plans, ceiling plans, elevations, sections, 3D views, sheets and PDF/SVG export. Commands view_graphics_get, view_graphics_set, element_override_set and element_hide_in_view; deleting an element drops its overrides.
View filters: named, project-wide sets of categories and rules on parameters (any schedule field or the level elevation; equals, contains, begins with, greater/less (or equal), has (no) value and their negations; all or any rule). Views apply them in order with visibility and overrides — the first matching filter wins per attribute, element overrides beat filters and filters beat the category. Commands filter_create, filter_set, filter_delete, filters_list, filter_elements, view_filter_add, view_filter_set, view_filter_move and view_filter_remove.
View templates: scale, category graphics, filters, plan cut height, building services display and structural display, each with an include flag. Applied once (view_template_apply) or assigned (view_template_assign): an assigned view follows the template in the same undo step and refuses edits of what it controls; deleting a template frees its views. Commands template_create (from a view), template_set, template_delete and templates_list; view_get reports a view's template.
Temporary hide/isolate of elements and categories per view (view_temporary): session display state, not saved, not undone and not printed; view_temporary_apply makes it permanent as one undo step.
View graphics in the app (View → Graphics): a Visibility/Graphics dialog (VG) with model and annotation category tables and a filters tab, a filter editor (categories, rules, AND/OR, matching count), a view template manager (Manage too) with an include box per property, Apply Properties and Assign to View, Override Graphics and Hide in View (EH) for the selection, and the view's template in its properties (controlled properties read-only). Temporary Hide/Isolate of elements and categories (HH, HI, HC, IC, HR) marks the view with a colored border and a chip with Reset and Make Permanent. 3D views show category and element colors, transparency, halftone and hiding.
Construction phases (renovation work) in the engine: an ordered list of project phases (Existing and New Construction in the template) that elements are built in and demolished in, and a phase and phase filter for each plan, elevation, section, 3D view and schedule. Relative to the view's phase an element is existing, demolished, new or temporary (built and demolished in it); elements built later or demolished earlier are left out. Phase filters (Show All, Show Complete, Show New, Show Previous + Demo, Show Previous + New, Show Previous Phase, Show Demo + New, and your own) show each status by category, with the project's graphics for it (existing faint, demolished dashed, temporary faint and dashed) or not at all, in plans, sections, elevations, 3D, schedules, sheets and PDF/SVG export; view templates control the phase filter. Doors, windows and rebar follow their hosts' phases (demolished with them unless demolished earlier), copies are built in the creation phase, rooms are bounded by the walls standing at the end of their phase, and views of a phase that leaves elements out get geometry of their own (later doors do not open existing walls; walls join within the phase). Schedules gain Phase Created and Phase Demolished fields. Commands phases_list, phase_create, phase_set, phase_delete (with merge_into), elements_phase_set, elements_demolish, phase_creation_set, phase_filters_list, phase_filter_create, phase_filter_set, phase_filter_delete, phase_graphics_get and phase_graphics_set; view_set takes phase and phase_filter, template_set a phase_filter, and element_get and view_get report them.
IFC export writes each element's construction phase status relative to the last phase as the IFC4 Status enumeration (NEW, EXISTING, DEMOLISH, TEMPORARY) in its common property set (Pset_WallCommon, Pset_DoorCommon…), the names of its phases in ConstructCAD_Phasing and the project's phases in ConstructCAD_Phases; import restores the phases by name, or maps Status alone onto the last two phases. CI validates a phases fixture.
Construction phases in the app: Manage → Phases (phases: add, insert, rename, reorder, delete with a merge target; phase filters: each status not displayed, by category or overridden; graphics of each status), with OK/Cancel undoing as one dialog. Views (plans, elevations, sections, 3D, schedules) get Phase and Phase Filter in a Phasing section of their properties (read-only when the template controls the filter), elements Phase Created and Phase Demolished, and view templates a Phase Filter row. Modify → Demolish (DE) demolishes the clicked elements in the active view's phase. New elements are built in the active view's phase (phase_creation_set), 3D views show their phase's geometry and schedules list their phase's elements.
ccad --version (-V) prints the version.
Installers in every release, built by the release workflow from packaging/: a Windows MSI (WiX; per-machine under Program Files, Start menu shortcut, .ccad file association, optional ccad on the PATH, in-place upgrades), a Linux .deb and AppImage (desktop entry, icon, .ccad MIME type) and a macOS .dmg per architecture with an ad-hoc signed ConstructCAD.app (icon, .ccad document type). All are listed in SHA256SUMS.txt, next to the existing archives.
Changed
.ccad format version 11 (construction phases); older files open with the template's phases, everything built in the last one and views showing all. Version 10 added view graphics, filters and templates; older files open with default graphics. Version 9 added arc walls and roof openings; older files open with straight walls and roofs without openings.
On Linux the window reports the app id constructcad, matching the desktop entry, so desktops show its icon and name.