Search the Knowledge Base Report a bug
Post new topic   Reply to topic   printer-friendly view   .    ArchiCAD-Talk Forum Index >>> Developer Forum >>> Confusion about starting add-on development
View previous topic :: View next topic
Author Message
yafimski
Guest
Guest

Joined: 11 Jun 2017
Posts: 3
Location: Europe

PostPosted: Wed Oct 11, 2017 6:14 pm    Post subject: Confusion about starting add-on development Reply with quote

Hi,

I've registered to the API platform in order to try and develop my own addon.
I am a bit familiar with coding such as HTML and a bit of JavaScript, but my C++ skills are unknown.

I've read through the basic explanations on:
http://archicadapi.graphisoft.com/api-reference

But sadly a lot of it is confusing to me, being a non-programmer.

The first thing that I would like to ask, is how to 'start' my add-on. The instructions say I need an 'MDID' resource in the form of:

Code:
'MDID' 32500 "Add-On Identifier" {
        developerID
        localID
    }


But I am not sure how to create this. Is any IDE sufficient? Do I specifically need a Visual Studio platform for this? What file type is this saved as?


Regarding the process in the link:
https://helpcenter.graphisoft.com/technotes/setup/software-technologies/getting-started-with-the-api-devkit/

the issue is the "AddOnAdmin". From what I can tell, this is just the add-on manager in ArchiCAD right? When I go to the add-on manager though, I have no option to make a "New Database" as they ask and insert my developer ID and so forth...


So right now I really want to start figuring out specifics of how and what to code for an add-on but I can't figure out the initial steps to start doing this.

I'm also a bit unclear about which file types the code needs to be saved as in general and if there is a specific folder structure within my addon folder that I need to respect.

I've marked all the questions in Bold and would be happy if someone knows how to answer any of them Smile

Thank you!
Back to top
View user's profile Send private message    
Karl Ottenstein
Moderator
Moderator

Joined: 28 Oct 2003
Posts: 7806
Location: Bozeman, Montana USA

PostPosted: Wed Oct 11, 2017 7:45 pm    Post subject: Re: Confusion about starting add-on development Reply with quote

If you are not yet a solid programmer and an experienced ARCHICAD user, the ARCHICAD API is not the place to learn. You should be able to answer most of your bold questions yourself when you are ready to be here.

Take an in-person or online class and become proficient developing simple apps in C++ and Visual Studio if you are using Windows or XCode if you are on a Mac. Then consider layering the complexity of AC development on those basic skills later.

Good luck!

_________________
AC 20 US, Artlantis 5, Adobe CS 6, Piranesi 6, Final Cut Pro X, etc.
8 Core 2.8 Mac Pro/12GB RAM, SSD, ATI 5770/1GB, 27" LED Cinema/Dell U2415: OS 10.11.6
Back to top
View user's profile Send private message    
daninet
Junior member
Junior member

Joined: 16 Sep 2015
Posts: 59
Location: Dubai

PostPosted: Mon Nov 13, 2017 3:40 pm    Post subject: Re: Confusion about starting add-on development Reply with quote

I have a few questions without opting in on the API website. I found it quite closed without any answers.

Do we have control over Archicad itself or only the model database? Can I start archicad, close the warning windows, start publishing without any user interaction?

How about C#? For revit we are using it and I have some experience with it but not with C++. Although it is kind of similR I'm not really willing to jump into it for smaller tasks.
Back to top
View user's profile Send private message    
Karl Ottenstein
Moderator
Moderator

Joined: 28 Oct 2003
Posts: 7806
Location: Bozeman, Montana USA

PostPosted: Mon Nov 13, 2017 6:57 pm    Post subject: Re: Confusion about starting add-on development Reply with quote

daninet wrote:
Do we have control over Archicad itself or only the model database? Can I start archicad, close the warning windows, start publishing without any user interaction?

How about C#? For revit we are using it and I have some experience with it but not with C++. Although it is kind of similR I'm not really willing to jump into it for smaller tasks.


My understanding from some time back - Ralph, Akos or someone can clarify:

There is no interface to fully control ArchiCAD by an independent process. No, you cannot close warning windows. Yes, an add-on can invoke Publisher on a publish set...but only after invoking the add-on. (Example in the Navigator-Test sample add-on in the devkit.) Typical add-ons are invoked by the user explicitly (menu or shortcut keys) and have access to the databases. Add-ons can be associated with building elements and can be invoked when a user touches/modifies those elements.

I think it would require way more work to make everything work with C# (if even possible) than it would to learn C++. See this topic:
http://archicad-talk.graphisoft.com/viewtopic.php?t=55976

For AC21 API development, the following are the environments for which all tools are designed (from the API docs):

Windows: Microsoft Visual C++ 2015 Update 3 installed. Only the 64-bit architecture is supported

macOS: Xcode 7+ (Xcode 8+ recommended)

_________________
AC 20 US, Artlantis 5, Adobe CS 6, Piranesi 6, Final Cut Pro X, etc.
8 Core 2.8 Mac Pro/12GB RAM, SSD, ATI 5770/1GB, 27" LED Cinema/Dell U2415: OS 10.11.6
Back to top
View user's profile Send private message    
daninet
Junior member
Junior member

Joined: 16 Sep 2015
Posts: 59
Location: Dubai

PostPosted: Tue Nov 14, 2017 12:26 pm    Post subject: Re: Confusion about starting add-on development Reply with quote

So this is the reason there are no great tools like Clarity for Revit in the market for Archicad.

Automation is the way to go and controlling your software automated is a huge potential. Think about scheduled exports, scheduled archiving ect. that require no manpower.
I would really looking forward to have something like this, also to prepare it to myself.
Back to top
View user's profile Send private message    
Ralph Wessel
Senior member
Senior member

Joined: 06 Nov 2003
Posts: 1493
Location: United Kingdom

PostPosted: Tue Nov 14, 2017 12:48 pm    Post subject: Re: Confusion about starting add-on development Reply with quote

daninet wrote:
I have a few questions without opting in on the API website. I found it quite closed without any answers.

Do we have control over Archicad itself or only the model database? Can I start archicad, close the warning windows, start publishing without any user interaction?

How about C#? For revit we are using it and I have some experience with it but not with C++. Although it is kind of similR I'm not really willing to jump into it for smaller tasks.

Karl has done a good job of answering your questions. Just to expand a bit:
- The API is primarily about interacting with the user and doing things to the project model. It's also possible to interact with the host OS, do network-based operations and work with files. You can interact with other processes and control ARCHICAD to some extent, but it relies more on work-arounds than explicit API support. I've have written add-ons to support automation via external applications, but it felt like swimming against the tide.

- Use C++ for ARCHICAD development. Direct use of C# isn't an option. Karl has correctly identified suitable development software.

_________________
Ralph Wessel
Cadimage
Back to top
View user's profile Send private message Visit poster's website    
Display posts from previous:   
View previous topic :: View next topic
Post new topic   Reply to topic   printer-friendly view       ArchiCAD-Talk Forum Index >>> Developer Forum >>> Confusion about starting add-on development All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB 2001, 2005 phpBB Group
Copyright 2012 - Graphisoft SE. All rights reserved worldwide. Terms of Use | Privacy Policy