rX rotations from KGC to SVG

May 6th, 2018


Click to view larger image

KitCAD i3 KGC rX rotations from KGC to SVG (example). Image above displays on the left a KGC rotation of a BC2di Object Item, and on right is the SVG rotation (clearer lines). Some drawings may display differently after the change (such as w600 x h600, fix by changing width to 633 – other Object Items may not draw correctly)

Using the following code will cause position errors when drawing plan view Object Items and when generating 3D renderings. Use of code is for example only. SVG rotated Object Items will not align with 3d renderings (even after altering functions).

Edit _r5en.js and append to end of file, the following code block:

The KitCAD i3 KGC functions of testkp2r300 and testkp2r600 will require editing by an administrator to align SVG rotation with vrml/x3dom placements should it be required (this should cause errors with 3d renderings as SVG rotated Object Items center point of rotation may differ to the center point of KGC rotation). The Object Item Depth of 300 and 600 are provided by default, other depths could be added. The function of runkp2r is used to determine Object Item depth before calling the functions of testkp2r300 or testkp2r600 which set a list of values depending on depth. The function of runkp2r then runs a function of testkp2rX that is used to assign TOP and LEFT positions from the list of values only when matched with the WIDTH of an Object Item (from 2000mm to 50mm).


Click to view larger image

For KGC rotations; The best way to get the values for the function of testkp2r300; Is to place a row of WC2di Object Items (1000m width, 300mm depth) onto plan view next to one another (largest 1000mm width to smallest 100mm) along the top of screen. Then a column of object items (largest 1000mm width to smallest 100mm) on the left most of screen, scrolling down to place Object Items (if required). Rendering the view should show a ‘L’ shaped view of Object Items (when 3d is spun 90deg) [See image above for an example L shape]. Remove any rendering position errors by altering the values within each function. Repeat this process using BC2di Object Items for testkp2r600 values.

Libsys i3 update – cbc2di

October 6th, 2017


Click to view image

Added a new Object item titled cbc2di as an example corner base cabinet Object Item, into the KitCAD library system (for all versions where required). Some cabinet makers can stockpile such corner Object items or order prefabricated and use when they are required – as such there is no cutting list (two infills may be listed) and the default size is 900Wx600D X 900Wx600D. The default size should NOT be altered as for such cases will require another Object Item to be coded by the end user. Limited testing was performed at 900Wx600D X 900Wx600D and minor corrections may still be required. Some older Object Item code from the CnrBC2di Object item was recycled and modified to suit.

The example titled cbc2di was modeled from the former CnrBC2di which was created from BC2di. The example library system is not a correct representation but is instead used to teach and test function of KitCAD2, KitCAD i3 KGC and above.

The image above shows testing of the KPD format whist using KitCAD i3 KGC rX – the image shows: Red line as Rotation, Blue box/line for an Object Item, and Green box/line is a KPD Fixed Item (and used to code cbc2di).

See comments of this posting for more information and a manual download link.

KitCAD i3 KGC rX lt

October 14th, 2016

Uploaded and Released KitCAD i3 KGC rX lt; a version without the need of PHP or CGI/PL files to reload or save KP2 files. Files are saved and reloaded by end-user text copy/paste methods where upon the end-user is responsible for storage of information within a end-user managed filing format of their choosing (such as an open office writer document or simple text file).

To access downloads, see comment/s.

The only difference from other versions of rX is that the lt version (The initials of ‘lt‘ being a shortened reference of the word light) has the following code block inserted at start of the _r5en.js file to alter the interface as required.

The code above exploits the rX interface features and alters the display to suit the required experience (text only save and loading of KP2 files for example). The features exploited are Online/Offline mode detection, and protocol file: detection. The end-user interaction is set to generate and reload text-only KP2 files by default and upon use of features that require online and protocol http: are given temporary values which allow their function to run to completion (as rX versions and without being in ‘lt’ text-only mode).