Start in Home or Card Index
Open /Portfolio/portfolio_editor.php while signed into WordPress as an administrator. Home reports the current working catalog; Card Index finds cards.
Fast procedures first, detailed tools second, and practical explanations of why the system works this way. This guide applies to version 204 of the complete portfolio software package.
Replace the old PVD_SolidWorks_Editor.cmd with the launcher in v204 and double-click it. The release builder incorrectly changed Windows’ fixed WindowsPowerShell\v1.0 directory to the PVD release number. This prevented PowerShell from starting. The corrected launcher uses the fixed v1.0 directory for Windows PowerShell 5.1, selects the 64-bit executable from 32-bit contexts, and provides a specific path diagnostic if the runtime is missing. No cache deletion or SolidWorks reinstall is required.
Only the PVD console title and versioned extraction folder now change between releases. Build checks validate both executable paths. The launcher disables delayed variable expansion to preserve exclamation marks in file names and returns the actual process exit status.
Decals are not transferred by the current native importer. Full detail retains available appearance values, material metadata and lighting; it does not include decal images or image/procedural textures. This limitation now appears before import.
SolidWorks exposes decal image paths and separate mask properties through its API. Correct browser rendering also needs projection/UV mapping, layer order and visibility. A dedicated translation step is required; v204 does not add that step. Standard texture maps already embedded in supported GLB/glTF files remain importable through Configuration Construction. SolidWorks’ Extended Reality documentation lists decals among advanced capabilities that require approved-provider viewers, so exporting XR GLB is not a guarantee that decals will render here.
References: Face decal properties, Decal mask properties, Extended Reality export limitations.
Configuration Construction is immediately before Import. The final editing actions are Naming → File Compression → Export, with Info last. File Compression is now a button that opens its preview directly, rather than opening a docked settings menu.
The preview contains Original / Compressed comparison, a numeric Quality selection, Update preview, Advanced settings and Save this compressed copy. 10 keeps exact geometry with lossless cleanup. 1 requests the smallest mesh. Higher levels retain more detail; boundaries, seams and the error limit can prevent reaching the target. The default on loading a scene is 10 to avoid repeated lossy reduction.
| Level | Requested triangles kept | Approximate body-size error |
|---|---|---|
| 1 | 10% | 1.00% |
| 2 | 20% | 0.75% |
| 3 | 30% | 0.50% |
| 4 | 40% | 0.30% |
| 5 | 50% | 0.20% |
| 6 | 60% | 0.15% |
| 7 | 70% | 0.10% |
| 8 | 80% | 0.05% |
| 9 | 90% | 0.025% |
| 10 | 100% | No triangle reduction |
Use Advanced settings inside the preview for configuration scope, manual triangle/error limits, seam protection, proportional texture resizing, gzip, hidden components and source details. Manual quality adjustments show Custom. Update preview after changing options; Save this compressed copy downloads the exact inspected result. Original / Compressed retains the live camera and selected configuration. Advanced settings appear beside the viewport on desktop and over its right side on narrow screens.
Import files as configurations has moved from Import into this tab. It retains multi-file GLB/glTF/STL/OBJ/STEP/IGES import, append/new-project choices and source-unit conversion. Configuration naming has moved here from Naming; title/component naming remain under Naming. Edit names inline and press Rename or Enter. View selects the configuration to inspect or locate.
Faces use the center of that bounding-box face; center is the axis-aligned bounding-box center. Bounds include hidden geometry and exclude temporary explode offsets. Coordinates refer to project axes, not a rotated face's local normal. Placement translates the configuration without rotating it or changing mesh buffers. Component identities, aliases and relative transforms are retained. Existing measurement points translate with the model. Original CAD files remain untouched; save the scene to retain placement.
Configuration switches continue to keep the live view. An explicit Locate operation may refit the camera only when Fit view after locating is enabled. Model origin means the file's coordinate origin, which moves with the file when aligned by another anchor.
Allow opening files controls construction import/location. Allow renaming title, configurations and components controls configuration naming here and title/component naming under Naming. Either permission can expose Configuration Construction with only its allowed sections. Allow saving files controls the direct compression preview and Export.
Use Card borders beside the gallery display controls. Color, line width (0–16 px) and corner radius (0–80 px) apply to photo and model card tiles. Width zero removes the border. Rounded outside corners remain transparent.
Both gallery cards and the model editor/viewer Viewport menu now offer Solid, Dotted, Dashed, Double, Groove, Ridge, Inset, Outset, Dash–dot, Dash–dot–dot, Wavy, Zigzag and Scalloped. Double and relief styles are clearest at widths of 3 px or more. Custom lines follow rounded corners and never intercept pointer input.
Card-border changes update existing cards without restarting model iframes. Tile model viewers use the gallery's outer frame; expanded models and standalone viewers retain their own saved viewport borders. Copy link to these cards now includes the border settings alongside filters, years, ordering and display settings. Older shared links remain supported.
For published defaults, use the portfolio catalog editor's Gallery Settings → Card viewport borders, then save the catalog to the website. These defaults are stored under gallerySettings.cardBorder. Visitor adjustments are temporary unless shared in a link. Existing catalog extension fields are preserved.
High quality requests 75% of triangles at a 0.05% approximate body-size error limit; Balanced requests 50% at 0.10%; Smaller file requests 25% at 0.25%. These are conservative PVD defaults, not guaranteed reduction percentages. Error, boundaries, normal/UV seams and topology may prevent reaching the requested count.
Normal, color and all available UV channels participate in simplification error; shading/UV seams and material boundaries are protected by default. Component identities and hierarchy remain intact. Repeated visual materials can share one export identity. No new geometry decoder is required by the resulting scene.
Open Advanced settings only when necessary. Adjust triangle retention, approximate error, seam protection, texture resolution, gzip, hidden geometry and source material details. Manual mesh/texture adjustments select Custom. Original texture resolution retains the full source, including images larger than the previous 4096 px cap. Optional 4096/2048/1024 px limits resize texture copies proportionally. Unsupported data/compressed/render-target textures remain unchanged and are counted. Source images are never resized in place.
Lossy geometry changes can alter measurements. Existing annotations are omitted only from saved configurations whose geometry changes. The original CAD/full scene remains the reference for precision measurements. Mesh reduction resets to Lossless cleanup on opening a saved result, avoiding repeated lossy reduction.
The v201 thread matching, aggressive thread preset and cylinder-replacement controls and processing have been removed. Previously exported proxy geometry remains ordinary geometry; use your original full project/CAD file to recover it. References in older release-history chapters describe those older versions only.
See Maintenance/COMPRESSION_NOTES.md for primary-source references, selected quality limits and implementation decisions. Primary references: glTF Transform simplification, meshoptimizer and texture optimization. Tests cover exact welding, conservative reduction, same-camera original/result previews, rapid comparison switching, exact preview downloads, textures up to 8192 px, optional proportional resizing, all border styles, gallery sharing/defaults, mobile layouts and prior gallery/viewer regressions.
The new main menu tab holds all file-size controls: configuration scope, lossless gzip, hidden geometry, source-material metadata, measured packaged size, mesh simplification and thread-body replacement. Export retains Save model + appearance and a shortcut to File Compression. Viewer access to these actions still uses Allow saving files.
Mesh simplification runs in an embedded worker and affects saved copies only. Lossy controls default off after opening a saved result to prevent repeated degradation. Unsupported skinning, instancing, morphs, partial draw ranges and unsupported attribute layouts are retained unchanged and counted. General reduction retains material ranges and available vertex attributes. Exact size savings depend on the source.
Choose thread bodies in the target list. Select thread name matches suggests bodies with names such as thread, screw, bolt, stud or helix; it does not identify CAD features. Review every selection.
A thread fused into a bolt head, housing or hole cannot be isolated reliably from tessellation alone. Use simplification for those bodies, or prepare a simplified SolidWorks configuration. Cylinder replacement is a visual proxy with no bounded geometric error. Check the preview before saving.
Mesh reduction is lossy; diameter, radius, area and volume can change. The approximate deviation metric is not a manufacturing tolerance. Existing annotations are omitted from saved configurations whose geometry changes, while the open full model and its annotations remain unchanged. Use the original CAD/full scene for precision measurements.
The title wraps and reserves room to the left of the full numeric side-scale overlay. It stays clear at top/bottom and left/center/right positions. The viewport configuration selector shows only its selection box, retaining its accessible name without the redundant visible caption.
The package includes Maintenance/CODE_REVIEW.md with findings, fixes, validation limits and architectural recommendations. Fixes include editor/viewer drift, temporary GPU/export-resource cleanup, linear-time clean-copy preparation, stale WordPress upload nonce verification, duplicate CSS, unreachable duplicate-card layouts and unused browser helpers. A maintenance build regenerates the viewer and exact standalone payload from the canonical editor. One stable-name manual remains.
In the editor/viewer Viewport menu, choose Border color and Border style: Solid, Dotted, Dashed or Wavy. Existing width/radius controls remain available. Color and style save with the scene-wide viewport settings and browser preferred presets; older scenes default to the red solid border.
Solid/dotted/dashed use native borders. Wavy uses a transparent, pointer-transparent SVG stroke fitted around the rounded viewport; its color, radius and size update with the controls and viewport resize. Setting width to zero hides the border. Native fullscreen remains borderless.
The editor/viewer document outside the rounded viewport remains transparent. Opaque model iframe backgrounds are removed from gallery tiles, detail cards and slideshow model frames; model tiles also avoid a second rectangular card border. The parent page or presentation container therefore shows through the unused corner regions. The model's interior background is retained. For a custom embed, keep the iframe's own CSS background transparent.
The slideshow playback rail now has Shuffle, Newest and Oldest buttons. They operate only on the slideshow's current category/search/year-filtered selection and do not reorder or refilter the gallery.
The controls work in standalone, fullscreen and same-origin blog-promoted slideshows, including mobile layouts.
Validation: Chromium tests cover all four border styles, live color, wavy resize/fullscreen behavior, scene roundtrip, and iframe transparency over an arbitrary colored host page. Pixel sampling confirms parent color at the outer rounded corners. Slideshow tests cover chronological traversal, shuffle completeness, unchanged gallery order, category filtering, parent-document promotion and mobile control bounds. The six-visible-model-preview regression is retained.
The gallery previously limited live model previews to the first three nearby cards. That could leave the fourth and later visible solid-model cards without a viewer; offscreen preload candidates could also occupy all three slots.
Every model card intersecting the visible viewport now receives its live viewer. The three-preview budget applies only to optional nearby preloading: extra offscreen previews are loaded only when fewer than three visible models use that budget. Preloads are ordered by distance, and viewers outside the visible/nearby set are still removed.
The visible slice is calculated for standalone galleries, auto-height same-origin WordPress embeds and fixed-height scrolling blog iframes. Internal iframe scrolling no longer confuses document coordinates with parent viewport coordinates. Parent height-only resizing also updates previews. Scroll work is batched once per animation frame, with old scheduled work/listeners removed on gallery rebuilds.
Install: upload the matching website files from the complete package, especially portfolio.html, while preserving portfolio.json and model files. No catalog changes are required.
Validation: the old cap was reproduced with six visible cards but only three loaded previews. Six real Chromium WebGL viewers then initialized together with the fix. Additional tests cover standalone scrolling, auto-height parent scrolling, fixed-height internal scrolling, offscreen recycling, parent height resizing, aspect re-renders and opened model-card persistence.
Saved transfer warnings previously forced the viewer's Import menu to appear even when opening files was disabled. That bypass is removed. Viewer setup → Viewer actions → Show import notes in viewer is now a separate permission, off by default and in all built-in presets. Enabling menu groups alone does not enable diagnostic notes.
With the option off, the viewer hides Import notes. The Import menu remains hidden unless opening files is independently allowed. Warnings remain stored in the scene and visible in the editor for the author. Existing scenes without this new permission also default to hidden notes. Enable it explicitly only when visitors should see them, then save the .pvdscene.
The old configuration/component dropdown and separate unnamed text fields are removed. Rename permissions and existing component aliases are retained. Inputs and labels use the dock's dark styling while the panel is open, and validation messages appear at the affected row.
The main-menu Snapshot button opens the snapshot window in one click. Its existing viewer permission key is retained, so earlier scene settings still control access. The Snapshot submenu is removed. Crop remains open while selecting, applying or clearing, and retains its explicit close action.
Validation: actual Chromium editor/viewer tests cover notes denied by default, explicit notes permission, old scenes, independence from file-opening permission and saved warnings. Tests exercise inline naming, active scope, View switching, filtering, Enter/Escape, duplicate checks, source identity, save/reopen and mobile input styling; direct Snapshot capture and persistent cropping are exercised. Existing live camera/configuration continuity checks also passed.
Names are saved in .pvdscene. Viewer renaming uses the existing Allow renaming title, configurations and components permission, retaining the legacy allow-edit-title key. With this permission, Naming is available independently of Export; saving still requires its own permission. Importing and editing do not rename original source files.
The layout leaves space for visible title/configuration fields and the local companion status. Overlapping title/configuration fields stack while preserving the configuration selector's chosen anchor. Overlay placement does not move or rotate the model. Choices are project-wide and saved with the viewport settings, including browser preferred presets. Portfolio embeds retain their existing hidden internal-title policy.
Check or uncheck Side scale bar to show or hide the right-side engineering scale. This is independent of configuration changes and is saved with the scene and preferred viewport settings. Existing scenes default to a visible scale, Top-left menu, Bottom-left title and their previous Menu/Base configuration selection.
Validation: Chromium editor/viewer tests cover title/configuration/component renaming, duplicate-name rejection, immutable source identity, per-configuration aliases, scene roundtrip and viewer permissions. Layout tests cover four menu corners, all six title/configuration positions, inward scrolling panels at desktop/mobile widths, selector synchronization, unchanged camera transforms, scale persistence and old-file defaults.
Validation: actual Chromium tests in both editor and viewer compare title/configuration computed styles, verify menu order and legacy permissions, exercise fractional/negative padding and scene roundtrip, select/apply/clear a real crop without losing the menu, close it explicitly, enter/exit fullscreen through the new action menu, and inspect mobile layout.
The former Project menu is split into two persistent left-docked menus:
Only one main menu is open at a time. Existing viewer file/title permissions remain authoritative: Allow opening files exposes Import; saving/title permissions expose the corresponding Export actions. Import notes are shown in the viewer only when Show import notes in viewer is enabled.
In the editor, author presentation settings under Viewer setup:
Save the .pvdscene to publish these choices. The editor restores the saved authoring camera; the opening policy is applied when the viewer loads the scene.
Viewport settings are project-wide, saved in .pvdscene, and do not change on configuration switches. Viewer authors can expose the Viewport menu through its menu permission. Native fullscreen remains borderless. The v194 complete-scale-label fix is retained.
New optional presentation metadata and manual explosion offsets require the matching v200 viewer to reproduce all behavior. Earlier v1/v2 scenes still open with as-saved camera, menu configurations and the original border defaults. Model origins are preserved through scene saves so origin-based explosion and opening views remain consistent.
Validation: Chromium editor/viewer tests cover real pointer dragging with transformed multi-body parents, constrained movement and Escape, single-body movement, repeated separation, configuration switches, exact save/reopen and reassembly, legacy permissions, preset storage, all opening modes, mobile menus/base selector and fit padding. Existing camera continuity, multi-file import/save/reopen and renderer-switch tests were exercised. Native SolidWorks/Windows execution remains a separate verification step.
The editor and viewer now measure the full scale labels and size their transparent ruler canvas accordingly. Previously its fixed 64-pixel width clipped leading digits and minus signs, so labels such as −400 mm could appear as just 0 mm.
Signed values, decimals and unit suffixes remain inside the ruler's drawing area as the scale changes during zooming and panning. The tick marks retain their position at the right edge. Labels have top/bottom safe margins to avoid the rounded viewport corners and consistent contrast; fine tick marks still fade at the edges. The overlay remains transparent to pointer input.
The canvas follows viewport size and display pixel density, including fullscreen and embedded viewers. No model coordinates, measurement values or scene file format are changed.
Validation: reproduced the old clipping, then checked complete text/halo bounds in the editor and viewer across desktop, portrait/landscape phone sizes, small/large coordinate scales, negative/decimal values, high pixel density, resizing and native fullscreen. Visual comparison confirms the complete numeric labels are now shown.
Supported formats: GLB, self-contained glTF, STL, OBJ, STEP / STP and IGES / IGS. For glTF with separate buffers or texture images, export a self-contained GLB first. OBJ uses the existing geometry loader; external MTL/texture files are not imported by this command. STEP / IGES use the existing browser CAD engine, downloaded on first use.
Appending: the open model/configurations, title, current view and edits are retained. An existing single model becomes the first configuration. New imports start with no explode or section cut; visibility and appearances remain separate. Existing material/lighting link overrides continue to apply where matching components are found. The Project panel remains open.
Failed imports: every file is parsed and checked before the batch is added. If one file fails, the current project remains and the submenu identifies the failed filename. New-project replacement happens only after successful parsing of every selected file.
Viewer permissions: importing is available only when opening files is permitted. Existing viewer configuration selection and the portable scene format are retained.
Validation: Chromium tests use real GLB, self-contained glTF, OBJ, STL, STEP and IGES geometry. Checks cover source scale, shared-origin/camera alignment, existing single/multiple projects, duplicate names, failure recovery, responsive docking, compressed scene save/reopen and viewer selection. The matching standalone launcher embeds the same editor and viewer. Native SolidWorks still requires Windows verification.
A master part containing only planes, axes, sketches or other reference entities can legitimately return no solid/surface bodies. Earlier versions treated that empty list as a fatal error and stopped the whole assembly import. v200 skips that component and imports the remaining solid/surface geometry.
The importer first tries the combined component-body query, then separate solid and surface queries if the first returns nothing or fails. Retries use assembly-instance bodies, preserving assembly-specific geometry such as cuts; raw part-document bodies are not substituted. Duplicate body references are filtered. Empty subassemblies are also reported.
Import → Import notes identifies skipped components with their full assembly path, native configuration, display state, referenced configuration and file. The first 20 skipped component selections appear there; the complete list is written to the companion log. Counts reflect configuration/display-state selections, so a reference part can appear more than once.
Suppressed/hidden-component policy is unchanged. Unresolved documents, missing referenced configurations, body-query errors after the typed retries, and invalid tessellation still stop import. A selection with no exportable geometry still produces an explanatory error, rather than an empty .pvdscene. SolidWorks document configuration/display-state restoration remains in place.
Diagnostics: fatal export errors retain the component context and failing API before restoration runs. Cleanup calls such as Restore IModelDoc2.GraphicsRedraw2 no longer replace the causal export step in the diagnostic report. Failure details are reset for the next API request.
Install: extract and run the matching v200 PVD_SolidWorks_Editor.cmd. Its embedded C# bridge contains this fix. All v191 browser fixes are retained, and there is still one PVD_Portfolio_Instructions.html.
Validation: simulated SDK tests cover a planes/axes master part alongside valid geometry, null/empty lists, empty subassemblies, typed-query recovery/deduplication, strict unresolved/broken-reference/tessellation failures and configuration restoration. HTTP tests use real PowerShell with the simulated bridge. Actual SolidWorks COM remains a Windows verification step.
The slider ranges from 0.0 to 10.0 seconds in 0.1-second increments. Zero minimizes the idle rail immediately after you leave it. An open panel stays open until closed or replaced. Zero and fractional values are saved with the project and carried across configuration switches. Older delays above 10 seconds are clamped to 10.
Renderer selection no longer reloads the page. Locally opened geometry, configurations, unsaved materials/visibility, camera, measurements and menu settings remain in the session. Auto uses stable WebGL. WebGPU remains experimental and depends on browser/hardware support.
A requested renderer is initialized and tested on the actual scene before its canvas replaces the working one. A failed change retains the previous renderer. Module and initialization waits are bounded. Runtime WebGPU render failures or device loss trigger recovery with WebGL. Recover with WebGL is also available in the GPU menu. If recovery cannot create a context, the scene stays available for saving and the GPU status explains the interruption. Changes do not navigate away or reopen the model file.
Entering fullscreen previously changed the gallery's width, causing its responsive renderer to close the card and unload the model. Model-card redraws are now deferred until the card closes, and auto-loading pauses while the card is open. Fullscreen transitions do not update the blog iframe's auto-height. The viewer fills the screen, updates the Full Screen / Exit Full Screen label, and resizes its renderer without fitting or resetting the view. Exiting returns to the same open card.
Both the blog's gallery iframe and nested model iframe must permit fullscreen. Use allow="fullscreen" allowfullscreen in the blog iframe block. Server Permissions-Policy or browser restrictions can still deny fullscreen; the viewer reports that denial while retaining the card and model.
The live summary reports selected/total configurations, included/total mesh bodies, omitted hidden bodies, included triangles, uncompressed geometry-buffer bytes and approximate source-detail bytes. These source totals are not the final .pvdscene size: container metadata and compression also contribute.
Expand What reduces file size? for the effect of each option. Compression is lossless. Current only omits other configuration/display-state entries. Excluding hidden components omits Off meshes while retaining transparent ones. Excluding source details removes physical-material XML/properties while retaining names and visual materials. These controls do not simplify the mesh; measurement geometry remains unchanged for included bodies.
Measure export size builds the selected export and compression without downloading it. The result reports exact packaged bytes, a readable KiB/MiB size, the uncompressed project size and compression reduction. Recalculate after model or option changes. Packaging a large assembly takes time and browser memory, just as saving does. Save shows the actual result as well. Keep a full source project to recover omitted data.
Validation: Chromium tests reproduce the v190 nested-card fullscreen teardown and verify preserved model/card through entry, exit and resizing. Renderer lifecycle tests use real WebGL rendering plus simulated WebGPU initialization, model-render and device-loss failures; local-file state survives changes and recovery. Tests cover 0/0.1/0.3-second timers, saved zero, size summaries and measured compression with no download. Native WebGPU device rendering still needs hardware/browser verification.
The display-state choices and hidden-geometry policy remain. Expand Import options / performance. Full detail keeps all source-reading options enabled. Faster import keeps rebuilding, lightweight resolution, tessellation reuse and source lights, while omitting physical-material details, face/feature appearances and source normals. Custom settings are also available.
Import → Import notes reports elapsed import time, configurations prepared, and faces sampled/reused. Import speed depends on the model, source tessellation and SolidWorks; no native hardware benchmark is claimed.
In Export → Save options, choose all configurations or current only, lossless compression, whether to include hidden components, and whether to include source material details. Geometry and metadata exclusions affect the saved copy; they do not delete data from the open model.
The save result shows actual output size and the lossless compression reduction. Old uncompressed version-1/version-2 projects still open. Save choices and model unit scale are retained. Hidden states are captured for all saved configurations, including entries not visited before saving.
Full Screen, Snapshot and Info have visible labels. Component Visibility replaces Components. The GPU menu contains renderer selection and active-renderer status. Existing GPU permission keys remain supported.
Opening a menu replaces the previous panel. Viewport interaction, measuring and configuration changes keep the current panel open. In View → Minimize delay, set 0–10 seconds in 0.1-second increments (default 3). The delay controls the idle rail when no panel is open. Open panels remain open until closed or replaced. The delay is saved and carries across configuration switches.
PVD_Portfolio_Instructions.html is the only manual in the complete ZIP and standalone launcher. Its title, navigation and release section show v200. The catalog editor and Info menu link to this stable filename. Upload the six website files in README_v200.txt and preserve portfolio.json. Older version-named manual files may be removed from your web folder after updating existing bookmarks.
Validation: compiled bridge tests with simulated SDK objects check preparation/tessellation counts, per-state appearance reads, option-controlled work, lightweight rejection and restoration. Actual PowerShell HTTP tests check option forwarding and types. Chromium tests check compression, copy-only exclusions, generic model units, old/new project loads, menu labels, exclusive docking, responsive controls, and actual idle timers. Actual SolidWorks COM and Windows launcher execution still require Windows verification.
The exporter applies the selected state before reading geometry, checks the state has not changed during transfer, and attempts to restore each touched configuration's previous display state and the original active configuration/state after success or failure. It does not save the native document. Rebuilds may mark that document changed.
A selection with no exportable bodies stops the import with an explanatory error. Choose another state or include hidden geometry. Native procedural shaders, texture images, decals and RealView rendering remain outside the browser transfer.
Install: use the v200 launcher; an older companion cannot supply the new state list. Upload the six matching website files listed in README_v200.txt and preserve portfolio.json and your existing models.
Validation: compiled C# bridge tests use simulated SDK objects for part/assembly state switching, visibility, appearance sampling, suppression, shared states and restoration on failures. Browser tests cover multi-state selection, payloads, responsive controls, hidden components, save/reopen and viewer rendering. Actual SolidWorks COM execution requires a Windows check.
Shuffle: the compact crossed-arrows button directly left of New / Old randomizes cards across all years while retaining the category, search, year range and display settings. Click again for a fresh order. New / Old returns to chronological ordering.
Copy link to these cards: the stacked button beside the count keeps the current selection and settings, including the shuffled order, when the link is reopened.
In the model editor, open Viewer setup from the main menu, or select Project → Viewer permissions…. The checklist now has its own narrow docked panel. The old clipped scrolling box inside Project is removed. The panel has a visible scrollbar when needed; the checklist has no second, restricted-height scroll area.
Each permission has a clearly labeled, clickable checkbox row with checked-state highlighting and keyboard focus. Viewer menus and file/title permissions are grouped separately. All menus and Clear menus change only menu availability; file opening, saving and title editing remain individual choices. The enabled-menu count updates as you make changes.
Save the .pvdscene project to retain these permissions. Existing permission keys and defaults are retained, including existing scene files. The presentation viewer continues to enforce the saved choices and hides the editor-only Viewer setup panel. No model reimport is needed.
The launcher now stays visible. Run PVD_SolidWorks_Editor.cmd normally. A console titled PVD SolidWorks Companion v200 — RUNNING — PID … remains available in the taskbar while the local import service runs. Closing the browser alone leaves this companion running. Closing the named console ends its process.
Clean shutdown: use the persistent Stop button at the lower right of the local editor, or Import → Stop local companion. The editor reports Stopped — safe to start another version only after the service acknowledges shutdown and stops answering. The console changes to STOPPED and confirms that its local address was released. Press Enter to dismiss the stopped status window. Your browser scene and SolidWorks remain open.
Running another release: the new launcher identifies a PVD companion already using the address. It reuses a matching release or requests a graceful shutdown of a different PVD release, waits for the address to be released and starts this release. This also replaces the hidden companion left by v185. Unrelated applications are left untouched. If an older service is busy with SolidWorks and cannot answer, the launcher reports that condition instead of claiming it is closed; let that operation finish and retry.
Always-visible status: the local editor and viewer show Running with version/PID, Busy during a SolidWorks operation, or confirmed Stopped. An unacknowledged connection loss is shown as Offline / not responding. Hosted pages do not display this local control.
Narrower menus: the desktop rail is 112 px, ordinary panels are 280 px, Materials is a 370 px single column, and Components is a 390 px grid. Panels share the largest necessary dock width when several are open. Mobile panels are limited to the available viewport width. Existing persistent-menu behaviour and configuration view continuity are retained.
Install: extract the new standalone .cmd and run it to use these launcher changes. Website installations should upload the six matching website files in README_v200.txt. Model geometry does not need reimporting for these changes.
Changing configurations now preserves the current world-space view: camera position and orientation, up direction, perspective, zoom, pan/orbit target, rotation mode, speed and on/off state. The model origin and axes remain in the same screen location and orientation. A different bounding-box size or center no longer reframes the model, and an older saved view in the destination configuration no longer replaces the current view.
If automatic rotation is running, its current pivot is carried across the switch so a different configuration center does not cause a jump. Choosing a rotation center again explicitly uses the newly selected model's origin or center. Reset and standard-view commands still change the view when requested.
The active view is restored when reopening a .pvdscene project, including its up direction and rotation pivot. Existing projects remain readable. Materials, lighting, visibility, section/explode settings and measurements continue to restore from the chosen configuration. Open menus remain open. No SolidWorks reimport is needed for this change.
Consistent menu expansion: Components, Materials and Configurations now use the same disclosure and left dock as Style, View, Light, Measure and the other main menus. Configurations shows a visible list of names, with the active choice highlighted; the entire menu is hidden when fewer than two configurations are available.
Opened means open: viewport clicks, measuring, orbiting, changing configurations and minimizing the main rail keep docked menus open. Opening another menu replaces the previous docked panel. Close an individual panel with its × button or its main-menu heading. The View menu controls the idle rail delay (0–10 seconds in 0.1-second increments; default 3) when no panel is open.
Rotate about: choose Model origin, Model center or Viewport center. The first two use the model's world origin and un-exploded bounding-box center respectively. Viewport center retains the current camera target; pan to place the desired rotation center in the viewport. This sets the orbit center for automatic rotation. The active rotation mode and camera target are saved in .pvdscene projects and carried across configuration changes. Older projects default to Model center.
Compact selection link: the button beside the portfolio card count now reads Copy link / to cards in a smaller two-line field. Its full accessible label remains Copy link to these cards. URL restoration behaviour is unchanged.
Install: upload the six website files listed in README_v200.txt. The matching single-file SolidWorks launcher is included. Existing .pvdscene files remain supported; these menu fixes do not require reimporting model geometry.
SolidWorks source defaults: import with the v200 launcher to bring each selected display state's available component/face appearances and document lights into its own browser configuration. Colour, transparency, shininess, specular intensity and emission are mapped to browser materials; physical material metadata is retained. Textures, procedural shaders, decals and HDR scene environments are not reproduced. Light colours, positions, direction, intensity, enabled state and camera/model locking are transferred; browser rendering remains an approximation.
Overrides: Materials → Override & link copies the active configuration’s appearances across matching components in every configuration. Exact body paths take priority; changed body names fall back to their component path. Subsequent material edits stay linked. Light → Override & link uses the editor lighting rig in all configurations, replacing source lights. Turning a link off keeps the last override and allows independent edits. Restore SolidWorks materials / lighting restores the preserved source values in all configurations and turns off that link. Visibility, camera and background remain independent. Saved .pvdscene files retain sources and overrides. Older scenes lacking source lights require reimport for those values.
Menus: the hamburger opens a vertical left rail. The active panel docks beside the rail, scrolls when needed and remains open until closed or replaced. An idle rail with no expanded panel auto-hides after the delay selected in View (default 3 seconds). Disable Auto-minimize in View to leave it open. Standard views have cube icons.
Measurements: diameter/radius use three separated points on a circular edge and also report circumference. Existing distance, angle, path, point and triangle tools remain; distance reports ΔX/ΔY/ΔZ. Area, volume and X/Y/Z bounding dimensions apply to a clicked component or the visible model. The Measure visible model button computes all three directly. Results use mm/mm²/mm³ or in/in²/in³ and survive saving.
Mesh limits: all geometric measurements are tessellation approximations. Circle fitting uses picked mesh positions, not native analytic edges. Volume is unavailable for open, degenerate or inconsistently oriented meshes. A closed topology check cannot detect every self-intersection. Body volumes and areas are summed; overlapping bodies are counted separately. Hidden bodies are excluded; section cuts do not trim measurement geometry. Bounds use world axes and the current exploded positions.
Copy link to these cards: the stacked button beside the card count copies a portfolio URL restoring category, search, year range, sort direction, tile aspect, ordering seed, batch and slideshow settings. It opens the gallery without starting a slideshow. Links work from the standalone gallery and the same-origin WordPress iframe. The selection follows these filters when the catalog later changes. Existing single-card links remain supported.
Install: upload the six website files listed in README_v200.txt. Keep portfolio.json unchanged. The launcher gracefully replaces an identified older PVD companion before starting v200; its standalone .cmd contains matching updated resources.
Open file is now in Project, the last toolbar menu. Components controls visibility; Materials edits appearances.
In Components, set a body or parent group to On, Off or Transparent. Visibility is saved independently for each configuration. Transparent fades the display while preserving the underlying appearance. Hidden/suppressed bodies omitted by SolidWorks import cannot be made visible here.
Materials has two columns: material properties on the left, component selection on the right. With the panel open, click a visible component in the viewport to select it; Ctrl, Command or Shift toggles additional selections. A SolidWorks component includes all of its imported bodies. Dragging continues to orbit. Measurements and face-normal selection keep their gestures.
Link materials across configurations starts off. Enabling it copies current appearances to matching component paths and body names; subsequent edits, paste and restore follow those matches in either direction. Extra or ambiguous bodies are skipped. This links browser materials and appearances; source physical-material metadata remains read-only. Visibility stays independent.
Link lighting across configurations in Light also starts off. Enabling it copies current lighting to all configurations, and future lighting edits, presets and resets stay shared. Background, camera, section and explode remain independent. Light has a separate close button. Both link settings persist in the saved .pvdscene.
PVD_SolidWorks_Editor.cmd from the complete release ZIP. This file can run by itself, without the other release files beside it..sldprt/.sldasm onto it. It unpacks its matching editor resources under local application data, starts the companion in the background, and opens the browser import dialog..pvdscene.Use Import → Stop local companion to end the background process without closing SolidWorks. Closing a browser tab alone leaves it running for the next import. Save your scene before closing the tab. Startup errors show a dialog with the log path; API errors retain Copy diagnostics.
No separate translator, administrator rights or browser extension is required. SolidWorks remains required for native import, and internet access is needed for Three.js modules. A website cannot launch Windows commands itself; the single launcher starts both native process and browser. The editor still runs in the browser. The redundant launcher aliases are removed; use PVD_SolidWorks_Editor.cmd.
The user confirmed v180 import works. Its typed COM connection and verified configuration switching are retained. Native CAD feature, dimension, mate and physical-material edits stay in SolidWorks. Reimport creates fresh scenes. Transfer limits for source appearances and physical properties remain unchanged.
Validation: configuration and browser tests cover picking, visibility/transparency, linking, permissions and project round trips. Local HTTP tests use actual PowerShell and the typed C# exporter with simulated SDK interfaces. Standalone payload extraction, path quoting and reuse are checked. Windows batch/console-window behaviour and actual SolidWorks still require a Windows check.
Deployment: upload the six website files in README_v200.txt to /Portfolio/. Keep .cmd launchers and the SolidWorks folder locally. Preserve portfolio.json.
Configurations expands into the left dock with a directly visible selection list and is hidden for files with zero or one configuration. Import warnings are available in Import → Import notes.
Components and Materials now list one row per component, omitting feature/body subrows. All bodies belonging to that component are selected or changed together. Components uses an aligned grid of On / Off / Transparent buttons, with the active state highlighted. Identical leaf names in separate subassemblies remain independent; their full paths are available in tooltips. A multi-body SolidWorks part uses the source document name as its single component row.
The rotation-speed slider has a visible center tick and 0 label where rotation stops. Material and lighting links and per-configuration visibility remain supported.
PVD_SolidWorks_Editor.cmd is now the only launcher. The old Open_SolidWorks_Editor.cmd was just a compatibility shortcut. A normal browser page cannot directly execute a Windows command; an installed application handler or extension would be required to launch from HTML. Use the single launcher to start the companion and HTML editor together.
Use this when you know what you want to change and need the shortest safe route.
Open /Portfolio/portfolio_editor.php while signed into WordPress as an administrator. Home reports the current working catalog; Card Index finds cards.
Use Search, Category and the two-ended Timeline below the top tabs. The chosen card and shared filter selection carry into Quick Image Framing, Quick Categories and Quick Links.
Use the full card editor for fields and resources. For a batch of crops, use Quick Image Framing: adjust 4:3, square and 4:5 previews separately, and step to the next card.
In Backups & Saving, choose Export working copy for a local JSON or Save unfinished work to website for a private WordPress draft—even if validation reports issues.
Use the persistent Save Changes to Website control to publish the catalog. It updates portfolio.json, not PHP/HTML. Then verify the public gallery, using a hard refresh if cached.
| Path | Responsibility | When it changes |
|---|---|---|
/Portfolio/portfolio_editor.php | Administrator-only WordPress editing UI; authenticated APIs for reading, publishing, private drafts and previous published versions. | Software update |
/Portfolio/portfolio.html | Public gallery: filters, responsive image cards, embedded live model viewers, details and slideshow. | Software update |
/Portfolio/PVD_Portfolio_Instructions.html | This self-contained manual, linked at the top of the editor; searchable index and print view. | Software update |
/Portfolio/portfolio.json | Live content: cards, categories, settings, media URLs and framing. The editor publishes to this file. | When you publish data; never overwrite it with a software ZIP. |
/Portfolio/PVD_3D_Viewer.html | 3D model viewer embedded in gallery tiles, card details and slideshows; also works standalone. | Included in every complete v200 software package; uses the same release version as the gallery and editor. |
Why these roles are separate: content survives interface upgrades; the public gallery requires no administrator credentials; and the manual always has a stable URL.
Home summarizes the editor’s current working catalog. It is not traffic analytics and is not necessarily the last-published website state.
Total cards; photograph and 3D model counts; category count; duplicate-media groups; year range; image records missing URLs.
Selected card, unsaved-change indicator, and review indicators for missing media or article links. These help locate possible issues; they do not automatically delete or modify any card.
Use Edit current card or Quick Image Framing to continue without searching again.
The index shows preview thumbnails, title/year/category context, Edit and Delete actions, and duplicate warnings. Use its shared Search, Category and Timeline filters rather than scrolling through the entire catalog.
Why: indexes should help you choose a card, not repeat every field from the full editor. Fine framing belongs in its dedicated workspace.
Zoom and position for 4:3 do not overwrite 4:4 or 4:5. A card can display in any of those shapes depending on gallery settings.
Image framing sets the 2D thumbnail crop. Rotating, zooming or lighting an interactive 3D object belongs to the separate solid-model viewer and its camera settings.
Why there is no second framing panel: the three previews are the controls. Keeping sliders adjacent to their preview reduces hand/eye travel and accidental edits to the wrong aspect.
Use the shared toolbar to narrow the catalog, then Start editing here at the upper left to jump to the card you want. Edit category chips inline beside the card preview; the selected card also carries into other quick-edit tabs.
Categories must be defined in Categories and Order before assigning them to cards. Changing a category on one card is not a bulk change unless you explicitly choose a bulk operation.
Filter and choose a starting card as in Quick Categories. Edit related resources beside each preview. Each resource has a human-readable label, a type and a URL.
For WordPress article links, use the title-lookup suggestion where available. For drawings, PDFs, STEP/STL, CAD projects or other files, use a verified URL. The card’s project article link is separate from its additional related links.
Why deletion does not immediately publish: review can involve many choices. Removing a card changes the current working copy; a single deliberate publish commits the full reviewed set to the website.
Categories and Order manages the authoritative set of category labels and their order. Gallery Settings controls default display order, aspect ratio, batch size, slideshow interval, automatic playback and whether hover labels appear.
A gallery setting is stored alongside the catalog in portfolio.json, so it becomes public only after Save Changes to Website. Reordering or filtering the editor workspace alone does not rearrange the stored catalog.
| Action | Saved where? | Public gallery updated? | Safe with validation issues? |
|---|---|---|---|
| Export working copy | Local JSON downloaded to your computer (includes unfinished card draft in the working-copy format) | No | Yes |
| Save unfinished work to website | Private WordPress draft associated with your administrator account | No | Yes |
| Save Changes to Website | Writes /Portfolio/portfolio.json, retaining pre-publish history | Yes | Editor warns; proceeding can publish incomplete records |
| View / load previous website versions | Reads private WordPress snapshot into the editor | No, not until you publish | Yes |
Changes in editor · not published means this browser’s working catalog differs from the last known publication, or contains a new draft. No pending edits means no changes currently tracked by the editor. Exporting/downloading a JSON file does not clear unpublished status.
Why: backup is about preserving data; publishing is about changing the live website. Keeping them separate prevents the loss of unsaved work.
Photograph cards need valid display and full image URLs. 3D model cards instead need a valid model file and viewer URL; still-image thumbnails are optional. URL validation checks formatting, not whether the remote file successfully loads.
If validation reports an issue, you can still use Export working copy or Save unfinished work to website. Do not publish over a good catalog simply to save work for later.
If you see “invalid main image URL / invalid full image URL” for a model card, check whether its Media Type is set to Interactive 3D Model and the model URL is present. For a photo, supply verified image URLs.
Embedded in a WordPress page. The WordPress page owns the vertical scrollbar; the gallery iframe reports its height to the parent. The bottom toolbar offers Full Window Gallery.
Direct standalone portfolio.html tab. The browser window has its own right-side vertical scrollbar. The matching toolbar position has a Home Gallery return button.
Both views read the same published catalog and offer the same search, categories, year range, aspect choices, cards and slideshow.
Cards are loaded in batches rather than forcing all full-resolution images into memory. Image cards show their preview; model cards can host a live 3D viewer with a separate Open card control.
The model card references the existing viewer in /Portfolio/PVD_3D_Viewer.html. Its model file is passed as the URL query parameter ?file=…. The model viewer itself handles compatible CAD/model formats and its camera/appearance tools.
Why not run every model continuously? Each viewer is an independent rendering context, and dozens at once would consume large amounts of GPU memory. Static thumbnails are still worthwhile for large collections, especially on mobile.
Start Slideshow from the gallery toolbar. The central stage takes precedence over the side controls. The left side gives project context and associated resources; the opposite side holds Previous/Next, speed, Play/Pause and Full screen/Window mode.
Switching between Window and Full screen retains the current slide. Previous and Next move among the currently filtered cards; navigation and closing return to the gallery without modifying card data. Interactive models load as model viewers rather than ordinary image tags.
The editor keeps the image itself central. All existing inputs remain available, but are organized according to their task.
Saving drafts: Save Card + New Draft and Discard Draft sit immediately to the left of the persistent Add New Card and Save Changes to Website actions in the lower-right button row. Saving a card draft is different from publishing the catalog; publish only when ready.
Why this layout: imagery and its technical controls remain together, while the right-hand editorial sections stack vertically in one column and run from most commonly entered fields at the top to administrative metadata at the bottom. Duplicate deletion remains in the dedicated Duplicates tab.
Zoom ranges from 0.50× to 3.00× in each aspect ratio. At 1×, the photograph covers the frame. Below 1×, it is intentionally smaller than the full crop and transparent margins may appear. This is different from an automatic fit-to-fill operation: the photograph is not enlarged against your zoom choice.
Drag the photograph to position it within the full available preview area. The drag direction works when zoomed in or out. The subtle checkerboard in the editor identifies transparency; it is not part of the source image or saved JSON. The gallery leaves this exposed area transparent, so the surrounding page background may still be visible.
Each of Small 4:3, Medium 4:4 and Large 4:5 stores its own zoom and alignment. Drag and verify each before publishing. For a completely filled tile with no transparent space, choose 1× or greater.
Background is in View. Select a background preset or a custom color there. Background changes are independent of lighting presets and component materials.
| Starting point | Use |
|---|---|
| Balanced studio | Balanced fill and reflections with clear shape definition. |
| Soft product | Open, softer lighting for finishes, plastics and product details. |
| Bright presentation | A bright, readable model with controlled reflections. |
| High contrast | Low fill and strong side light for surface and shape definition. |
| Technical clarity | Even fill and restrained reflections for engineering details. |
Each preset sets a complete lighting rig: exposure, main light and direction, fill, reflections and ground-shadow settings. Refining an individual control changes Starting point to Custom. Lighting changes leave the selected background, component appearance, display style and camera alone. New projects save the lighting version; older reflection settings are converted from the former preset multipliers.
Model origin is the default: parts spread outward from the imported model’s origin. Choose Assembly center if the imported origin is not a useful center for a presentation. Separation controls the amount; 0% restores every original local position exactly.
| Pattern | Behavior |
|---|---|
| Radial outward · 3D | Spreads bodies in their original outward directions; more distant bodies travel farther. |
| Planar fan · XY, XZ, YZ | Spreads in the selected plane. |
| Along X, Y, Z | Moves each part away from the origin along one axis. |
| Spiral outward | Adds a tangential sweep to outward expansion. |
| Cylindrical · around Y | Expands around Y with a gentle vertical spread. |
| Diagonal / Four-way fan | Creates deterministic presentation fans while retaining an outward component. |
| Ordered outward / Layers | Ranks parts on an axis and spreads them outward in stable order. |
All patterns increase or preserve each body’s distance from the selected origin. Coincident and on-axis bodies receive deterministic fallback directions. Nested, rotated and nonuniformly scaled parents are handled in world space; repeated slider changes do not accumulate drift. Pattern, origin and separation are saved in the project, while the saved model geometry remains assembled. Exploded views keep shadows suppressed and restore the previous ground-shadow preference on reassembly.
Opening a file in the presentation viewer enables Auto-minimize and starts the toolbar minimized when no menu is already open. This includes raw CAD/mesh files and .pvdscene projects with a saved off preference. The preference can be changed until another file is opened. The editor continues to restore its saved preference.
Solid-model cards no longer include Download original model file. A related link that duplicates the active model file is omitted too. Related links & files now appear inside a separately shaded group beneath the primary article, full-image and interactive-viewer actions. Share stays last. Photo cards use the same tonal resource grouping.
Validation: mathematical checks cover all 15 outward patterns, both origins, multiple amounts, deterministic order and no inward motion. Browser tests cover nested and nonuniform parent transforms, repeated slider changes, exact reassembly, shadow restoration, complete lighting presets and manual refinements, legacy lighting conversion, raw/project viewer defaults, and the card resource groups. Default WebGL and the WebGPU renderer’s WebGL backend are exercised. Card-menu checks also run in WebKit. Native WebGPU device rendering remains unverified after the previously documented headless device loss.
Style now presents every display mode directly as a selectable row, without a nested Mode dropdown. A miniature graphic illustrates the surface or edge treatment. The selected row has a highlight and check mark.
| Symbol | Display mode |
|---|---|
| Shaded | |
| Shaded + edges | |
| Glass | |
| HLV (hidden lines visible) | |
| HLR (hidden lines removed) | |
| Wireframe (mesh) | |
| Edges only (CAD wire) | |
| X-ray | |
| Clay | |
| Normals |
Click a row to apply it. Keyboard users can focus the selected style and use the arrow keys to move through the choices; Home selects the first style and End selects the last. Glass shows its Transparency control below the list. The selected style remains saved in the portable project.
View now contains Origin axes and Ground grid. These controls no longer appear in Style. The GPU selector and active-backend indicator now sit after Rotate and before Reset in the expanded toolbar.
Auto-minimize toolbar starts enabled. This applies to a fresh application and to a project with no saved auto-minimize or older auto-hide preference. The editor preserves a saved explicit off value. The viewer enables auto-minimize whenever any model file opens, including projects saved with this setting off; you can turn it off for the current viewing session. The hamburger remains visible when the toolbar minimizes. All existing menu permissions and the viewer’s initially minimized toolbar are retained.
In the model editor or viewer, open Section, enable the cut, choose an axis and adjust Position or Reverse.
| Cut display | Result |
|---|---|
| Back surfaces | Shows exposed inner and rear walls with the cut left open. |
| Capped | Fills closed section contours while preserving bores and cavities. Each cut face inherits its body’s active display material and appearance. |
There is no separate cut-color control. Cut faces follow the component’s color, roughness, metalness, opacity and other material settings, as well as display-style changes. Original surface UV textures are not stretched onto the newly generated interior plane. The cap uses the first display material for a body with multiple material slots; vertex-colored bodies use the first vertex color as their uniform cut-face color.
Caps follow exploded and transformed components; hiding a component also hides its cap. Cap geometry stays outside the imported model tree and is not exported as additional bodies. Open or nonmanifold section contours remain unfilled and are reported in the Section menu. The geometry generator targets static CAD and mesh models.
The cut display mode is saved in .pvdscene. Older saved cut-color values are ignored. Section retains the saved viewer permissions.
Validation covers body-specific cap materials across display styles and appearance edits, section geometry, menu controls and project save/reload. The default WebGL renderer and the WebGPU renderer’s WebGL backend are tested; native WebGPU device validation remains unavailable after the headless device loss described in the previous release.
Confirmed cause: the images downloaded successfully, but WebKit gave the gallery image link a height of zero. The link used height:100% inside an auto-height, aspect-ratio tile that was also a column flex item. Its absolutely positioned image inherited the zero-height drawing area.
Correction: the gallery media link now uses position:absolute; inset:0; width:auto; height:auto. The existing tile determines the aspect ratio and the media link fills its interior directly. This applies to photo and model cards and preserves the per-ratio crop, zoom, hover label and click behavior.
During investigation, the deployed v171 HTML matched the previous release byte for byte. In automated Linux WebKit tests of both the live WordPress embed and standalone gallery, all 33 photo images in the first 35-card batch had downloaded but displayed at 0px height. Applying this positioning correction restored nonzero image height for all 33. Automated WebKit is not a macOS or iOS Safari device test.
Regression checks: automated tests passed in WebKit, Chromium and Firefox for the initial photo batch, all four aspect choices, mobile/desktop resizing, categories, search, year filtering, sorting, image detail previews, slideshows, the next 70-photo batch, and recovery from a deliberately broken responsive source. The live 889-card catalog snapshot and real photo files were used. Model iframe documents were stubbed for these layout tests; the 3D runtime scripts are unchanged.
Install: upload this release into /Portfolio/, including portfolio.html and the single manual PVD_Portfolio_Instructions.html. Leave portfolio.json in place. To bypass an existing cached HTML response while checking deployment, open /Portfolio/portfolio.html?pvdRelease=172. In the page source, confirm data-pvd-release="172".
portfolio.json backup.portfolio_editor.php, portfolio.html, PVD_Portfolio_Instructions.html to /Portfolio/.PVD_3D_Editor.html and PVD_3D_Viewer.html to the /Portfolio/ directory on the website.portfolio.json. It is the live card catalog, managed independently by the editor.| Symptom | First checks | Safe next step |
|---|---|---|
| Edits disappeared after reload | Was the private draft or working-copy JSON exported? A normal reload loads published data. | Restore from Backups & Saving, verify card count, then publish if desired. |
| A model card has a blank view | Verify model file and viewer URLs. Try Test 3D model from the full editor; check file access and browser console errors. | Keep card record; use optional still thumbnail until viewer loading is resolved. |
| Image unavailable | Verify optimized and full image URLs, file permission and WordPress media links. | Edit URL or upload a replacement; the card remains in the mosaic. |
| Save failed with revision conflict | Another session may have published a changed JSON. | Export working copy, review newest website catalog and selectively restore edits. |
| Gallery looks outdated after upload | Confirm actual v200 filenames deployed; WordPress caches/CDN may serve older HTML. | Hard refresh; verify iframe URL and file on server before changing data. |
| Opened card model looks tiny or clipped | First check whether the dark viewer area fills its part of the popup. A full-size viewer showing a small object means the model camera, not the HTML layout, needs adjustment. | Use the bundled v200 3D viewer camera/fit settings for the model; gallery v200 automatically uses the available visible browser area. |
| Slideshow model view is small | Distinguish the iframe viewport from the model’s camera framing. | If viewport fills its stage, adjust camera or saved model appearance in the separate viewer. |
| Browser slows near many model cards | Multiple live 3D frames are GPU-heavy, especially on mobile. | Prefer saved static thumbnails for very large catalogs; avoid multiple viewer tabs. |
Image proportions are fixed, crop controls sit under previews, and dialogs/slideshows give maximum area to photography and CAD.
All editor tabs update the same working records rather than maintaining separate competing copies of card data.
Export and drafts do not change the public gallery. Publishing checks the server revision and retains history.
Static photo tiles are cheap; interactive 3D tile viewers are loaded only near the current viewport. Detailed views and slideshows load the selected model.
The v200 complete release includes the gallery, editor, interactive 3D viewer and instructions with consistent release labels. 3D model tiles remove the redundant corner label and place a compact Open Card icon at the upper-right, styled like the viewer hamburger button. The viewer title sits closer to the lower-left edge, with the same transparent, white-on-clear styling as the minimized hamburger button, and remains editable. All downloaded files are in one folder; install the viewer directly in the /Portfolio/ directory. The editor retains the previous release's functions; the portfolio.json catalog remains untouched by software installation.
PVD_3D_Editor.html is the authoring workspace. Under Project, toggle each Viewer menu function before saving a .pvdscene. PVD_3D_Viewer.html is the presentation runtime: it loads the same scene and exposes only the functions enabled in that scene. Older .pvdscene files without menu permissions open with controls restricted by default. Install both HTML files directly in /Portfolio/.
In PVD_3D_Editor.html, open Project and set Viewer menu functions, including Allow opening files, Allow saving files, and Allow changing model title. Save the .pvdscene to persist these choices. The presentation viewer enforces the stored choices. Both HTML applications deploy directly in /Portfolio/.