blog/
Python в ArchiCAD 23
Все сказано в ролике, текст программы ниже rotateselectedtext.py. Про скрипты в InDesign вот тут. Ещё про питон — см. в рубрике программирование. Бесплатный курс по Питону.
import math from random import seed from random import randint print ('{:-^30}'.format ('BEGIN')) # __APIType: Text Element # head: (APIObject: Element Header) # head.__APIType: Element Header # head.typeID: 15 # head.variationID: 0 # head.guid: DD8C0DBB-C49B-48F6-B32E-6F8025693C37 # head.modiStamp: 883107 # head.groupGuid: 00000000-0000-0000-0000-000000000000 # head.hotlinkGuid: 00000000-0000-0000-0000-000000000000 # head.floorInd: 0 # head.layer: 42 # head.hasMemo: True # head.drwIndex: 10 # head.userId: 0 # head.lockId: 0 # head.rgr_layer: 0 # head.renovationStatus: -1 # head.renovationFilterGuid: E9C06C46-F7E2-4023-8435-9242864B1041 # pen: 86 # faceBits: 1 # font: 369 # fixedAngle: False # anchor: 0 # just: 1 # size: 3.0 # spacing: -1.0 # angle: 0.0 # charCode: 11 # effectsBits: 0 # widthFactor: 1.0 # charSpaceFactor: 1.0 # fixedSize: True # usedContour: False # usedFill: False # contourPen: 65 # fillPen: -1 # loc: (APIObject: 2D Coordinate or Vector) # loc.__APIType: 2D Coordinate or Vector # loc.x: 0.2 # loc.y: 0.2 # width: 24.7955 # height: 4.71429 # nonBreaking: True # multiStyle: False # useEolPos: False # nLine: 1 # owner: 00000000-0000-0000-0000-000000000000 # contourOffset: 0.0 # flipEnabled: True # guid = ClickElement () i=0 for guid in GetSelectedElements (): if guid != None: elementTuple = GetElement (guid) #returns tuple!!!! i+=1 # print (type(elementTuple)) # print (elementTuple[0].List()) # print ("///") # print (elementTuple[1].List()) # element = APIObject () #elementTuple[0].anchor = 0 #change the anchor point elementTuple[0].angle = math.radians(randint(0, 360)) ChangeText (elementTuple[0]) print ("x: "+str(elementTuple[0].loc.x)+" y: "+str(elementTuple[0].loc.y)) print (' elements rotated: '+str(i)) print ('{:-^30}'.format ('END'))
UPD: Эти * удалили из блога пост со ссылками на скачивание этой экспериментальной версии. Однако, я нашёл ссылки через вебархив. http://archicadapi.graphisoft.com/wp-content/uploads/2020/02/PythonAPI_Experimental_Version_AC23.3000_Win.zip
Может быть интересно:
- Скрипт для выбора победителя в инстаграме (из лайков)
- Про Python и ArchiCAD: удалить лишние слои
- Скрипт для выбора победителя в инстаграме (из комментариев)
- Задаём свойства объектам в ArchiCAD 23 через Python
- Копировать и отразить направляющие в InDesign
▣