Interprogram interakció

Laboratóriumi munka №5

Interprogram kommunikáció - számos módot kínál az információcserére az alkalmazások között. A legtöbb módszer a COM-technológián alapul, amely a Windows operációs rendszerek egyik fő összetevője. Nézzünk egy ilyen módszert, az úgynevezett OLEAutomation. Oroszul ezt a kifejezést általában "automatizálási vezérlőként" fordítják le, bár gyakrabban hagyják fordítás nélkül.

Alkalmazásunk vezérlő lesz (a vezérlő más alkalmazásokat kezel), és a második alkalmazásként (vezérlő objektum) az AutoCAD automatizálási kiszolgálót fogja használni. A legtöbb modern alkalmazás, beleértve az AutoCAD-t is, támogatja a COM technológiát a Microsoft által kifejlesztett specifikáció használatával. és támogatja a szabványos interfészeket, amelyeken keresztül elérheti ezeket az alkalmazásokat. Ez a kézikönyv leírja az AutoCAD OLEAutomation technológiával való együttműködés módját. Azonban mindez átvihető más alkalmazásokra, amelyek támogatják a COM-t.

Keresse meg az acax16enu.tlb fájlt a számítógépén (a fájl nevében szereplő számok meghatározzák az AutoCAD verzióját.) Szóval kicsit más lehet). Ez a fájl általában az AutoCAD telepítéséhez használt könyvtárban található. vagy a C: \ Program Files \ Common Files \ Autodesk Shared könyvtárban. A tlb kiterjesztésekkel ellátott fájlok típus-könyvtárak, tartalmazzák az alkalmazás COM modelljének leírását.

Nyissa meg a C ++ Buildert, és válassza ki a Project-> ImportTypeLibrary menüpontot. A megnyitott párbeszédpanelen kattintson a Hozzáadás gombra, és válassza ki a korábban talált AutoCAD típusú könyvtárat. A Builder regisztrálja a kiválasztott típustárat, majd telepítenie kell (az Install gombra).

Interprogram interakció
Interprogram interakció

Miután összeállítása komponens paletta számos új alkatrészeket kell telepíteni a PC (alapértelmezés helyezzük őket ActiveX oldalon) az összes komponens van szükségünk csak AcadDocument. amely lehetővé teszi az AutoCAD grafikus héjával való interakciót. Itt már használják a technológiát az úgynevezett korai kötődés a szerver, elvileg lehetséges, hogy nélküle importál típusfüggvénytár segítségével késői kötést technológiája azonban az első lehetőség miatt előnyös nagyobb közötti kölcsönhatás gyorsaság és a kényelem a programozás során.

Miután megkaptuk a komponenst az AutoCAD használatához, meg kell tanulnunk, hogyan kell vele dolgozni, azaz. hogy megtudja, milyen funkciókat és hogyan hívhat. Keresse meg az acadauto fájlt a számítógépén. a C: \ Program Files \ AutoCAD \ Súgó könyvtárban kell lennie. Ez egy súgófájl, amely teljes információt tartalmaz az AutoCAD objektummodellről. Itt a metódusok és események mezeinek összes objektumának leírása (az objektumokkal való munka példái a VisualBasic-ban láthatók).

Az automatizálási kiszolgálókkal való együttműködéshez kövesse az alábbi műveletek algoritmust:

· Csatlakozás a kiszolgálóhoz:

· Funkciók végrehajtása ezen a szerveren

· A létrehozott dokumentum mentése:

· Kapcsolódjon le a kiszolgálóról:

Az automatizálási kiszolgálóval való együttműködés és a funkciók hívása érdekében különleges típusú OleVariant típusú adatokra van szükség. a kiszolgálónak szinte minden paraméternek ilyen típusúnak kell lennie. Például, fontolja meg az AddCircle funkciót. a segítség a következő leírásban található.

Kör alakú és sugarú középpontú kört hoz létre.

RetVal = object.AddCircle (Központ, sugár)

ModelSpace Collection, PaperSpace Collection, Block
Az objektum vagy objektumok.

Variáns (háromdimenziós tömb a páros); input csak
A 3D WCS koordináták meghatározzák a kör központját.

A kör sugara. Pozitív számnak kell lennie.

Circleobject
Az újonnan létrehozott Kör objektum.

Ez a kör a WCS XY síkján jön létre.

A Centre paraméter adja meg a kör közepének pontját. Ez három kettős elem tömbje. A C ++-ban létrehozhat egy ilyen tömböt az alábbiak szerint:

A tömbelemek értékeit az alábbiak szerint adhatja meg:

A kétdimenziós esetben a harmadik koordináta nem szükséges. A Radius paraméternek Double típusúnak kell lennie. A létrehozott RetVal objektum visszaküldött mutatója elhagyható. Az összes szükséges paraméter beállítása után hívhatja a funkciót:

Minden más funkciót hasonló módon használhat. A szerverre átadott paraméterek érvényesítését a funkció végrehajtásakor hajtják végre, nem pedig az összeállítás szakaszában, ezért figyeljen a lehetséges futási hibákra.

1. A kocka izometrikus képét egy adott oldal mentén állítsa be (a tengelyek dőlésszöge az izometriában 45 0)

2. Háromszög alakítása három meghatározott oldal mentén.

3. A kocka képét az adott oldal mentén lévő dimenzióban alakítsa ki (a tengely meredeksége a 60 0 méretben)

4. Húzza el háromszöget két oldal mentén és egy szöget egymás között

5. Építsen egy háromszöget az egyik oldalán és két szomszédos sarkon.

6. Húzza össze a hengereket két ponttal, amelyek meghatározzák a körök középpontját és sugarait.

7. Építsen egy négyzetet az adott oldalon és árnyékolja be (a keltetési lépést a felhasználó határozza meg).

8. Háromponttal három pontot állítson fel, és egy sarkát húzza az egyik sarkába.

9. Szabályos n-gont hozzon létre (a sokszög oldalainak számát a felhasználó határozza meg).

Kapcsolódó anyagok

Kapcsolódó cikkek