INTERNET DRAFT Jason Robinson Title: draft-kitcad1-2004.txt Kitchen Pages, computer software. Expires: December 2004 August 2004 Protocols and RFC links for KitCAD1 Using middleware conversions or end use applications Status of this Draft Document This document may not be modified, and derivative works of it may *not* be created. This document may only be posted in an Internet-Draft for information uses. * denotes that the word of 'not' in the statement, above; and these two lines are to be removed on final publication. The text found in this document when completed will be translated into a web HTML format for web browser viewing - draft is in text. Abstract The "KitCAD" software package is designed to be many parts acting together or seperatly as one larger package to process large amounts of data in real time environments, or as seperate packages to suit a users data output requirements. This document defines the base framework of KitCAD1 files on a single use basis and multiple use basis. Subsequent and previous documents leverage this base framework to extend the environments encounted and managed. The ultimate goal of this framework is to reuse entered information while retaining the function of such entered information. While this document presents technical details, it is not yet intended as a definitive or final specification, rather, the intent is to define a framework and sufficient technical detail to promote experimental deployment with a view to evolving into a comprehensive directive standard for KitCAD +v2 compliant softwares. KPD and DAT file formats are identical. The file is known as a 'Object' while the contents are described as 'items'. These KPD and DAT file formats are known as 'Object Files' comprised of many 'items'. However, 'Object Files' may have 'Object Items' - where the 'items' are related to 'Objects'. This document in regards to KitCAD does not support the ideal of a backward extending tree. It is suggested for extending backward or foward trees users should be required to manualy create such systems for intergration into KitCAD2 should that processs seem needed - on worksite. Support for legacy code should be enabled at the application level for each version of KitCAD. As KitCAD2 would include support for both Object/Item contents. While KitCAD1 should only ever include support for Item contents - and as per this document, or others. Table of Contents 1. Acknowledgments 2. KitCAD.exe version 1.x DAT and KPD file description 1. Acknowledgments The author wishes to thank everybody who contributed for their valuable suggestions and constructive criticism. 2. KitCAD.exe version 1.x DAT and KPD file description A header value must be used, in any place of the DAT/KPD file data, as shown in the following test example: ------------------------------------------------------------ [File] ------------------------------------------------------------ The header value is followed by the following KEYs and VALUEs: ------------------------------------------------------------ Items=[Integer] [Integer]=[AnsiString] ------------------------------------------------------------ Total item count is 'Items=1' The '[Integer]=[AnsiString]' syntax corrosponds to the The header VALUEs for each item, as below; and repeat for each item within the KPD/DAT file. For Example '1=KICKER1' The name of 'KICKER1' should be constructed in the order of drawing placement of each item on-plan. An Example as {name}{pos} or {KICKER}{1}. ------------------------------------------------------------ [KICKER1] ------------------------------------------------------------ Each of the following are optional under each sub-value header. ------------------------------------------------------------ Extension=[Integer] Objects=[Integer] RealWidth=[Integer] RealDepth=[Integer] RealHeight=[Integer] RealHeightFrom=[Integer] RealPosX=[Integer] RealPosY=[Integer] RealRotation=[Integer] Scale=[Integer] Top=[Integer] Left=[Integer] Width=[Integer] Depth=[Integer] Height=[Integer] HeightFrom=[Integer] FixX=[Integer] FixY=[Integer] Show=[Integer] Hide=[Integer] Fixed=[Integer] RotateBy=[Integer] Comments=[AnsiString] AddOns=[AnsiString] FillColour=[Integer] LineColour=[Integer] BmpFile=[AnsiString] ------------------------------------------------------------ The information above is drawn to a canvas or stored for reuse. Informative referance [KITCAD2] http://www.kitchenpages.com/help/i3/draft-kitcad2-2004.txt ;see draft-kitcad2-2004.txt Author's Address Jason Robinson http://www.kitchenpages.com/feedback.html Please send comments to the author at the above address. This Referance, if any; will be: kitcad1-2004.txt Next Referance, if any; will be: draft-kitcad2-2004.txt Support other Referance, if any: NONE-n/a Previous Referance, if any; was: NONE-n/a RCS: $Id: draft-kitcad-2004.txt,v 1.0 2004/09/09 00:00:01 markd Exp $