Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «КОМПАБ-3D V10 Π½Π° 100 %Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 95

Автор Максим ΠšΠΈΠ΄Ρ€ΡƒΠΊ

8. ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Application Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° настроСк ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’ ΠΏΠΎΠ»Π΅ Target file extension Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ для Ρ„Π°ΠΉΠ»Π° Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ – RTW. НаТмитС OK, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ настройки.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡŽ (для этого Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Project β†’ Compile Hello_KOMPAS ΠΈΠ»ΠΈ сочСтаниСм клавиш Ctrl+F9). Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π² ΠΏΠ°ΠΏΠΊΠ΅ FirstLib Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ΠΏΠΎΠΊΠ° Π΅Ρ‰Π΅ пустая ΠΈ бСсполСзная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, Ρ„Π°ΠΉΠ» ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π°Π·Π²Π°Π½ систСмой Hello_KOMPAS.rtw.

Π§Ρ‚ΠΎΠ±Ρ‹ RTW-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, написанная Π½Π° Delphi, ΠΌΠΎΠ³Π»Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с КОМПАБ, Π² Π½Π΅ΠΉ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Ρ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (для срСд программирования Π½Π° Π±Π°Π·Π΅ языка C ΠΈΠ»ΠΈ C++ достаточно Π΄Π²ΡƒΡ…, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ LibraryName ΠΈ LibraryId ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹ Π² ΠΎΠ΄Π½Ρƒ – unsigned int WINAPI LIBRARYID()):

β€’ LibraryEntry – Ρ‚ΠΎΡ‡ΠΊΠ° Π²Ρ…ΠΎΠ΄Π° Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ;

β€’ LibraryName – Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ имя Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ΅ Π² ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ;

β€’ LibraryId – Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ (ΠΏΠΎΠ·ΠΆΠ΅ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с самой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ, для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ списка мСню Π΅Π΅ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ ΠΏΡ€.).

ВсС эти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ экспортными, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ экспортируСмыми ΠΈΠ· Π΄Π°Π½Π½ΠΎΠΉ DLL, Ρ‡Ρ‚ΠΎΠ±Ρ‹ систСма КОМПАБ ΠΌΠΎΠ³Π»Π° ΠΈΡ… Π²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ ΠΈΡ… ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΡƒΠΆΠ½ΠΎ вынСсти Π² Ρ€Π°Π·Π΄Π΅Π» exports ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ описаниС этих Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² Π²Π°ΡˆΡƒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ (листинг 6.8).

Листинг 6.8. Π’Ρ€ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ RTW-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ

library Hello_KOMPAS;

uses

SysUtils, Classes, ksTLB;

{$E rtw}

{$R *.res}

function LibraryName: PChar; pascal;

begin

Result := β€œΠŸΠ΅Ρ€Π²Π°Ρ библиотСка”;

end;

function LibraryId: integer; pascal;

begin

Result := 100;

end;

procedure LibraryEntry(command: WORD); pascal;

begin

end;

exports

LibraryName name β€œLIBRARYNAME”,

LibraryId name β€œLIBRARYID”,

LibraryEntry name β€œLIBRARYENTRY”;

begin

end.

Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΊ КОМПАБ. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π² ΠΎΠΊΠ½Π΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΠ»ΠΎΡΡŒ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ LibraryName имя Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π—Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ всС Ρ€Π°Π²Π½ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ – Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ пустая функция Ρ‚ΠΎΡ‡ΠΊΠΈ Π²Ρ…ΠΎΠ΄Π° Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ LibraryEntry.

Π‘ΠΎΠ²Π΅Ρ‚

Π›ΡŽΠ±Π°Ρ создаваСмая Π²Π°ΠΌΠΈ Π½Π° Delphi Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚Ρ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° Π΄Π°Π½Π½ΠΎΠΌ этапС Π² ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ ΠΈ Π² дальнСйшСм ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ… Π½ΠΎΠ²Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊΠ°ΠΊ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° стала Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ.

Π‘Π½Π°Ρ‡Π°Π»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π² Ρ€Π°Π·Π΄Π΅Π» uses Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ – ksAuto, Π° сам Ρ„Π°ΠΉΠ» этого модуля (ksAuto.pas) пСрСнСсти Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ FirstLib\dcu. Π€Π°ΠΉΠ» ksAuto.pas вмСстС с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ API систСмы КОМПАБ находится Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ SDK\Include ΠΏΠ°ΠΏΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ установлСна тСкущая вСрсия КОМПАБ-3D.

Π’Π½ΡƒΡ‚Ρ€ΠΈ ksAuto.pas Π΅ΡΡ‚ΡŒ многочислСнныС ссылки Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ классов КОМПАБ API. Π―Π²Π½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈΡ… Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ uses Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ, Π½ΠΎ слСдуСт пСрСнСсти Π² ΠΎΠ΄ΠΈΠ½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с Ρ„Π°ΠΉΠ»ΠΎΠΌ ksAuto.pas. Для Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° достаточно всСго Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Ρ„Π°ΠΉΠ»Π° (для Π±ΠΎΠ»Π΅Π΅ слоТных понадобятся, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅): ks2DCOM-TLB.pas, LDefin2D.pas, LibTool.pas ΠΈ LtDefine.pas. ΠŸΡ€ΠΎΡΡ‚ΠΎ скопируйтС эти Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· SDK\Include Π² ΠΏΠ°ΠΏΠΊΡƒ FirstLib\dcu вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π’ Ρ„Π°ΠΉΠ»Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚Π΅ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ kompas Ρ‚ΠΈΠΏΠ° KompasObject, Π° Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ Π²Ρ…ΠΎΠ΄Π° Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ (листинг 6.9).

Листинг 6.9. Π’Ρ‹Π²ΠΎΠ΄ тСкстового сообщСния

uses

SysUtils, Classes, ksTLB, ksAuto;

{$E rtw}

{$R *.res}

// глобальная пСрСмСнная прилоТСния КОМПАБ API

var kompas : KompasObject;

// ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠΏΡƒΡ‰Π΅Π½

procedure LibraryEntry(command: WORD); pascal;

begin

// инициализация ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° KompasObject

// с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ CreateKompasObject

kompas := KompasObject(CreateKompasObject);

// Ссли всС ΠΏΡ€ΠΎΡˆΠ»ΠΎ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ

if (kompas = nil) then exit;

// Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ сообщСниС

kompas.ksMessage(β€œΠŸΡ€ΠΈΠ²Π΅Ρ‚ ΠΈΠ· КОМПАБа!”);

// обнуляСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ kompas

kompas := nil;

end;

Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΈ скомпилируйтС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, послС Ρ‡Π΅Π³ΠΎ запуститС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΅Π΅ Π΅Π΄ΠΈΠ½ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° выдаст ΠΏΠ΅Ρ€Π²ΠΎΠ΅ привСтствСнноС сообщСниС (рис. 6.23).

Рис. 6.23. Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅, посланноС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ


Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!

ΠŸΡ€ΠΈ компиляции ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° прикладная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΈΠ½Π°Ρ‡Π΅ компилятор сообщит ΠΎΠ± ошибкС.

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ этой ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ сам исполняСмый Ρ„Π°ΠΉΠ» прилоТСния Hello_KOMPAS.rtw находятся Π½Π° ΠΏΡ€ΠΈΠ»Π°Π³Π°Π΅ΠΌΠΎΠΌ ΠΊ ΠΊΠ½ΠΈΠ³Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚-дискС Π² ΠΏΠ°ΠΏΠΊΠ΅ Examples\Π“Π»Π°Π²Π° 6\Delphi Programming\FirstLib. ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ компиляции исходных Ρ„Π°ΠΉΠ»ΠΎΠ² Π½Π° своСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΡƒΠ΄Π° Π±Ρ‹ Π½ΠΈ Π±Ρ‹Π»ΠΈ скопированы исходники с диска, ΠΏΡƒΡ‚ΠΈ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ КОМПАБ, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π² настройках ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ ΠΏΠ΅Ρ€Π΅Π΄ компиляциСй ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ эти ΠΏΡƒΡ‚ΠΈ (см. рис. 6.22) ΠΈ лишь послС этого выполняйтС сборку Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΠΈΠ½ΠΈ-БАПР Π·ΡƒΠ±Ρ‡Π°Ρ‚Ρ‹Ρ… колСс

Для Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ усвоСния ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ ΠΌΠΈΠ½ΠΈ-БАПР, ΡΠΎΠ·Π΄Π°ΡŽΡ‰ΡƒΡŽ ΠΏΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ количСству исходных Π΄Π°Π½Π½Ρ‹Ρ… 3D-модСль Π·ΡƒΠ±Ρ‡Π°Ρ‚ΠΎΠ³ΠΎ колСса (ΠΊΠ°ΠΊ прямозубого, Ρ‚Π°ΠΊ ΠΈ косозубого). Π’ ΠΎΠ±Ρ‰ΠΈΡ… Ρ‡Π΅Ρ€Ρ‚Π°Ρ… Π·Π°Π΄Π°Ρ‡Π° Ρ‚Π°ΠΊΠΎΠ²Π°: послС Π²Ρ‹Π·ΠΎΠ²Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ появляСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ Π·Π°Π΄Π°Π΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, количСство Π·ΡƒΠ±ΡŒΠ΅Π², ΡˆΠΈΡ€ΠΈΠ½Ρƒ Π·ΡƒΠ±Ρ‡Π°Ρ‚ΠΎΠ³ΠΎ Π²Π΅Π½Ρ†Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ³ΠΎΠ» Π½Π°ΠΊΠ»ΠΎΠ½Π° Π·ΡƒΠ±ΡŒΠ΅Π² колСса. По Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌ, послС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΡƒΡŽ модСль колСса.

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ конструкторской Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠ°ΠΊ это Π±Ρ‹Π»ΠΎ описано Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ сСбС Π·Π°Π΄Π°Ρ‡Ρƒ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΌ шаблоном, для Ρ‡Π΅Π³ΠΎ скопируйтС всС исходныС Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π² Π½ΠΎΠ²ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ (Π½Π°Π·ΠΎΠ²Π΅ΠΌ Π΅Π΅ Gears3D) ΠΈ сохранитС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠΎΠ΄ Π½ΠΎΠ²Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ (Gears3D.dpr). ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΡƒΡ‚ΠΈ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ КОМПАБ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ Gears3D\dcu) Π² настройках ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½Π° Gears miniCAD ΠΈ ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ старый ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ SDK\Include Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Gears3D\dcu Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ» с описаниями констант, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌΠΈΡΡ ΠΏΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… интСрфСйсов, β€“ ksConstTLB.pas. Π—Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ взаимодСйствиС с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ планируСтся ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°, Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ. Для этого Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ File β†’ New β†’ Form, послС Ρ‡Π΅Π³ΠΎ Π² инспСкторС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² настройтС Ρ‡Π°ΡΡ‚ΡŒ свойств Ρ„ΠΎΡ€ΠΌΡ‹ (Ρ‚Π°Π±Π». 6.8), оставив ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Π’Π°Π±Π»ΠΈΡ†Π° 6.8. Настройка свойств Ρ„ΠΎΡ€ΠΌΡ‹ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ

ПослС создания Ρ„ΠΎΡ€ΠΌΡ‹ Delphi автоматичСски сгСнСрировал ΠΌΠΎΠ΄ΡƒΠ»ΡŒ (unit) с ΠΊΠΎΠ΄ΠΎΠΌ Π΅Π΅ описания. Π£Π΄Π°Π»ΠΈΡ‚Π΅ ΠΈΠ· этого модуля описаниС глобальной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ GearsForm Ρ‚ΠΈΠΏΠ° TGearsForm ΠΈ сохранитС ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ BuildUnit.pas.

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ ΠΏΠΎ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ тСкстовых ΠΌΠ΅Ρ‚ΠΊΠΈ (TLabel) ΠΈ поля Π²Π²ΠΎΠ΄Π° (TEdit), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π²Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ (TButton). ΠŸΡ€ΠΈΡΠ²ΠΎΠΉΡ‚Π΅ ΠΈΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ ΠΈ ΠžΡ‚ΠΌΠ΅Π½Π°.

РазмСститС ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ элСмСнты управлСния ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рис. 6.24.

Рис. 6.24. Π€ΠΎΡ€ΠΌΠ° Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ


ПослС создания Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π΅Π΅ Π²Ρ‹Π²ΠΎΠ΄ Π² ΠΎΠΊΠ½Π΅ КОМПАБ. Π—Π°Π΄Π°Ρ‡Π°, Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд, слоТная, Π½ΠΎ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ просто. Для Π²Ρ‹Π²ΠΎΠ΄Π° Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅.

1. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ дСскриптор Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° КОМПАБ.

2. Π—Π°ΠΏΡ€Π΅Ρ‚ΠΈΡ‚ΡŒ доступ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΊ Π³Π»Π°Π²Π½ΠΎΠΌΡƒ ΠΎΠΊΠ½Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

3. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° ΠΈ вывСсти Π΅Π³ΠΎ Π½Π° экран Π² модальном Ρ€Π΅ΠΆΠΈΠΌΠ΅.

4. ПослС закрытия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΎΠΊΠ½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠΈΡ‚ΡŒ ΠΎΠΊΠ½ΠΎ ΠΈ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠΊΠ½ΠΎΠΌ КОМПАБ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ.

5. ΠžΠ±Π½ΡƒΠ»ΠΈΡ‚ΡŒ дСскриптор прилоТСния.

Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ дСйствий Π»ΡƒΡ‡ΡˆΠ΅ всСго Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ Π²Ρ…ΠΎΠ΄Π° Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ (листинг 6.10).

Листинг 6.10. Π’Ρ‹Π²ΠΎΠ΄ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ

procedure LibraryEntry(command: WORD); pascal;

var GearsForm : TGearsForm;

begin

kompas := KompasObject(CreateKompasObject);

if (kompas = nil) then exit;

// ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ дСскриптор Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° КОМПАБ

Application.Handle := kompas.ksGetHWindow;

// Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅ΠΌ доступ ΠΊ Π³Π»Π°Π²Π½ΠΎΠΌΡƒ ΠΎΠΊΠ½Ρƒ

kompas.ksEnableTaskAccess(0);

// создаСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°

GearsForm := TGearsForm.Create(Application);

GearsForm.ks := kompas;

// Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³ Π½Π° экран

GearsForm.ShowModal;

// удаляСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚

GearsForm.Free;

// Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ доступ ΠΊ ΠΎΠΊΠ½Ρƒ

kompas.ksEnableTaskAccess(1);

Application.Handle := 0;

kompas := nil;

end;

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π΅ ΠΊΠΎΠ΄Π° Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½Π°, Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд, нСпонятная строка – GearsForm.ks := kompas;. Π’ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, здСсь всС просто. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° построСния Π·ΡƒΠ±Ρ‡Π°Ρ‚ΠΎΠ³ΠΎ колСса Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ класса Ρ„ΠΎΡ€ΠΌΡ‹ TGearsForm, Ρ‚ΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² Π½Π΅ΠΌ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π·Π°Π½ΠΎΠ²ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° интСрфСйс KompasObject, этот ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ пСрСдаСтся внСшнСй ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ks класса TGearsForm. РазумССтся, эту ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ (Ρ‚ΠΈΠΏΠ° KompasObject) Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Ρ€Π°Π·Π΄Π΅Π» public описания класса Ρ„ΠΎΡ€ΠΌΡ‹. ΠŸΠ΅Ρ€Π΅Π΄ этим ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ uses модуля BuildUnit ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ (ΠΌΠΎΠ΄ΡƒΠ»ΠΈ): ksTLB, ksAuto, ksConstTLB, LDefin3D, LDefin2D ΠΈ math (послСдний Π½Π΅ относится ΠΊ КОМПАБ API, это стандартный ΠΌΠΎΠ΄ΡƒΠ»ΡŒ матСматичСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Delphi).

Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Gears3D.rtw ΠΊ КОМПАБ. ЗапуститС Π΅Π΅ ΠΈ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ послС выполнСния Π΅Π΅ СдинствСнной ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° появляСтся созданноС Π½Π°ΠΌΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ.