eTrace;
procedure Clear;
function GetLinkPads: TLinkPadsArray;
function GetDensityByRow: TDensityArray;
function GetDensityByColumn: TDensityArray;
public
property RowCount: integer read rc write SetRowCount;
property ColCount: Integer read cc write SetColCount;
property Pads: TTraceElementArray read aPads;
property LinkedPads: TLinkPadsArray read GetLinkPads;
constructor Create (pCanvas, pCanvasRow, pCanvasCol: TControlCanvas; aRowCount, aColCount: integer);
destructor destroy; override;
procedure Paint;
procedure CreateNewPad (xpad, ypad: integer);
function DeletePad (xpad, ypad: integer): Boolean;
function LinkPads (xpad1, ypad1, xpad2, ypad2: integer): boolean;
procedure ShowPad;
function Trace: integer;
function OpenTraceFile (const FileName: string): boolean;
function SaveTraceFile (const FileName: string): boolean;
end;
Даний клас забезпечує:
управління життям об'єктів, які необхідні для реалізації трасування: полем трасування (aTracingGrid: TTracingGrid), списком контактних майданчиків (aPads: TTraceElementArray), списком ланцюгів (aCircuits: array of TCircuit), діаграмами густин (RowDens, ColDens: TTraceDiagram);
логіку роботи програми: створення та контроль контактних майданчиків (procedure CreateNewPad (xpad, ypad: integer)), зв'язування контактних майданчиків (function LinkPads (xpad1, ypad1, xpad2, ypad2: integer): boolean), безпосередню трасування майданчиків (function Trace: integer ;) та інші функції;
допоміжні функції: запис і читання файлів відповідного формату (function OpenTraceFile (const FileName: string): boolean; function SaveTraceFile (const FileName: string): Boolean), інформацію про дані трасування (property Pads: TTraceElementArray read aPads; property LinkedPads : TLinkPadsArray read GetLinkPads).
Інші структурні типи, такі як масиви, записи, присутні в програмі, в докладному описі не потребують. Вони необхідні для забезпечення функціоналу основних класів програми. p> Додатковий опис полів і методів класів можна знайти в коді програми в коментарях. Після розробки концептуальної об'єктної системи програми, слід перейти до її проектування. br/>
. Проектування програми
Проектування програми необхідно почати з проектування користувальницького інтерфейсу.
Розробка інтерфейсу
Основний тип інформації, який є результатом роботи програми, графічний. З цього випливає, що при проектуванні інтерфейсу слід врахувати необхідність організації зручного і наочного відображення графічних даних. p> Спроектуємо інтерфейс за наступним принципом:
В
Рисунок 2 - Основна схема інтерфейсу
Найбільшу область головного вікна програми займає поле трасування. Це необхідно для більш наочного відображення розлучених зв'язків. З боків...