The Global Archicad Community

Stay informed. Get help. Share your knowledge.

Discussions about using GRAPHISOFT's tools (API DevKit) for independent software developers

Moderators: Karl Ottenstein, LaszloNagy, ejrolon, Barry Kelly, gkmethy, rmasaki, MOREH Tamas, Akos Somorjai, Ed Brown, Mihály Palenik, Tibor Lorántfy

#304607
I tried, something to throw on API_ParagraphType, but without successfully

UPD. If it helps. See attachment
UPD2. API_ParagraphType should be passed to memo
Thank You for the Listing of Text attributes. It will come in handy for future reference.

I can get a multisyle text to run. It just will not format correctly. The reason is because of the name conflict between the C++ code and Python. The conflicts are: from,& tab,run,eol which are used for two different uses. Changing those names for one or the other use will allow it to run,but because the APIObject attribute names are now different, Archicad will not recognize them. So the program does not recognize the formatting which was what I was trying to accomplish. I will have to wait until Graphisoft resolves the conflicts. I will just use the single line DrawText until then and just break up the paragraphs with multiple statements.

This does point out that that a simple wrapper from C++ code to Python will not be that easy or straight forward? I think that another Beta site needs be opened up to point out these problems. The first Beta was too short.
#304894
Petar.Pejic wrote:
Thu Dec 05, 2019 8:59 am
Edit: ListClickedElementMembers.py seams to work only for walls, it does not recognize any other elements when clicked (windows, doors, columns, roofs, slabs). Only walls. Is it just me, or others have that issue as well?
AFAIK-- Graphisoft has not YET defined a API_Object() for the elements you mentioned above.
The only element parameter structures (class) defined are: Wall, Morph, Zone,Text, & arc/circle. For which, there are also a direct "GET" function(s). Also, lacking is a Get_memo function.

At present, in my opinion, this experiment is lacking in too much functionality to be of much use or to properly evaluate and comment.
#304937
I am very disappointed to hear that. It really is not of much help if only a couple of elements could be accessed. It is understood able that graphisoft publish this experimental version, but I do not see the point of having this experiment for 2 years almost.
I would love hearing from graphisoft more often on this forum, so they can share their plans and progress on certain things. It would make me as an user more comfortable.
#306370
Hello everybody.
Are you waiting for a beta?
Rumor has it that in February may begin.
If someone sees that the beta entry has opened, please write here. :D
P.S. And the I so understood easily can be miss this event.

P.P.S. Has anyone tried to link any interesting libraries? I tried Tkinter and overall the interaction was happening. Not without problems, of course. But as a matter of fact, it's cool.
I'll record a short video later
#307367
roger wrote:
Fri Feb 21, 2020 9:57 am
Hi, thank you for your reply. Unfortunatly, I does not help, but finding the Add-On Manager did help finding an error message.
Re-downloaded it today, did not change anything.

current.PNG
You should try to download exact version of python (as it is in manual)

Download Python 3.7 installer for macOS: https://www.python.org/ftp/python/3.7.3 ... sx10.9.pkg
Download Python 3.7 installer for Windows: https://www.python.org/ftp/python/3.7.3 ... -amd64.exe
Best regards,
Rafał
Last edited by rav668 on Sat Feb 22, 2020 10:17 pm, edited 1 time in total.
#307372
It appears that the stdin has been redirected -- may be wrong on that or not using the right code.

However, you can achieve a 'work around' by using tkinker's input dialog.
Code: Select all
import tkinter as tk
from tkinter import simpledialog
root = tk.Tk()
root.withdraw()

user_info= simpledialog.askstring('title','Name')
print(user_info)

root.destroy()
you must manually destroy the instance as there is presently a bug in the application.
  • 1
  • 4
  • 5
  • 6
  • 7
  • 8