Archive for the ‘Bugs and Requests’ Category

KitCAD i3 KGC – flash player is being retired

Monday, September 23rd, 2019

Abobe Flash player is being retired; On December 31 – 2020, Adobe Systems will officially stop updating and distributing Adobe Flash. Web Browsers may allow users to disable the flash player plug-in causing web site versions of KitCAD i3 KGC to not render 3D.

The KitCAD i3 KGC x3dom10 folder requires new updates to maintain function without flash support, this update to 1.8.0 should be only applied to the web server versions of KitCAD i3 KGC. The 1.7.1 SWF file included within this update is to only maintain backwards compatibility with legacy browsers.

X3dom 1.8.0 has been updated from version 1.7.1, see update notice for more information.

The exe versions of KitCAD i3 KGC and above require the previous flash version of the x3dom10 folder (version 1.7.1).

Download and extract the KitCADi3_noflash_x3dom10 archive, extract the archive to the folder of C:\xampp\htdocs\library\i3 (example only)

KitCADi3_noflash_x3dom10: zip / 7z


Wednesday, January 30th, 2019


Click to view

This special rebuild of the Embarcadero distributed XE3 RPCL 5.0/5.1 to version 5.11 removes the conflicts with PHP 7.

The updated RPCL 5.1 code was refactored to remove the Object error, rewrote the ‘easy’ function, and removed phrase error from XAJAX library which solved all other page loading issues.

Because the RPCL code can be reused on existing RPCL projects – this update is only available as an archive file format.

KitCAD i3 rX with PHP 7 XAMPP users will need to extract the ZIP file into the folder of

Download/s: KitCADi3rX_RPCL_PHP7_XAMPP.* (ZIP | 7Z)

After Installing the above, see the php 7 ready XAJAX update (see entire post for more information)

Note: Only modified files/folder are included – the special build will update 5.1 version RPCL. The special build RPCL version may only work with a limited number of PHP 7 versions and it not designed for previous PHP 5 or future PHP 8 versions.

rX rotations from KGC to SVG

Sunday, 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 (start with one 1000m width, 300mm depth which is placed on-top of a BC2di object item) 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.