Examples
서브폴더 Examples에서 당신은 여러 가지 예제 프로젝트들을 찾을 수 있습니다. 이것들은 API의 서로 다른 서비스들을 주제별로 시연합니다. 전체 API의 논리를 더 잘 이해하기 위해 예제 프로젝트들을 공부하십시오.
구조
각 예제에 대해 예제의 메인 디렉토리에 Xcode / Microsoft Visual C++에 대한 프로젝트 파일이 포함되어 있습니다. 프로젝트를 연 후, 당신은 어떤 예제도 빌드할 수 있을 것입니다. 이 프로젝트 파일들은 또한 각 컴파일러/플랫폼에 대한 실제 템플릿 프로젝트도 포함하지만, 당신만의 프로젝트를 만들기 위한 템플릿 파일 역할을 합니다.
예제 폴더들은 다음과 같이 구성되어 있습니다:
- source 파일 (Src 폴더 안)
- resource 파일 (RINT 안에는 localizable한 내용이, RFIX 디렉토리에는 localizable하지 않은 내용이 있으며, RFIX.win/ RFIX.mac 폴더에는 플랫폼 의존적인 내용이 있습니다)
- 각 플랫폼에 대한 프로젝트 파일
컴파일 이슈
당신의 프로젝트들에서 DEBUVERS
지시어를 제거하십시오.
왜냐하면 InputOutput 모듈의 릴리즈 버전과 디버그 버전 간에 충돌을 일으키기 때문입니다.
구체적으로는 Location class (Location.hpp 참고)는
#if defined(DEBUVERS)
안에 있는 data member를 포함하고 있습니다.
만약 당신의 애드온이 디버그 버전이며 ArchiCAD가 릴리즈 버전이면,
Location class의 크기가 다를 것입니다.
그리고 ArchiCAD와 당신의 애드온 간에 location이 전송될 때 충돌을 일으킬 수도 있습니다.
(예. 당신은 로드된 라이브러리들의 리스트에 라이브러리를 추가합니다)
예제들은 당신에게 힌트, 팁 & 트릭, 서로 다른 API Manager들과 함수들을 올바로 사용할 수 있도록 시연하는 유용한 코드 조각들을 제공합니다.
영역:
- 3D Manager (3D_Test)
- Attribute Manager (Attribute_Test)
- Communication Manager (Communication_Client, Communication_Manager)
- Element Manager (Element_Test)
- LibraryPart Manager (LibPart_Test)
- Listing Manager (Listing_Manager)
- ModulData Manager (ModulData_Manager)
- Notification Manager (Notification_Manager)
- Selection Manager (Selection_Manager)
- Teamwork Control (Teamwork_Control)
- ACAPI_Automate (Automate_Functions)
- ACAPI_Database (Database_Control)
- ACAPI_Environment (Environment_Control)
- ACAPI_Goodies (Goodie_Functions)
- ACAPI_Interface (Interface_Functions)
- Dialog Manager (DG_Test)
- Graphisoft Root Package (GSRoot_Test)
- Geometry (Geometry_Test)
- ModelAccess Package (ModelAccess_Test)
- Debugging support (Crash_Detection)
- Other compiler support (DLL_Test)
- API Output Framework – ArchiCAD 데이터베이스를 통해 반복하는 C++ wrapper (APIOutputFramework_Test)
- Custom Panels (Panel_Test)
- Real life example (Plan_Dump)
- SQL (SQL)