Регистрация | | запомнить |
 
 
ВК



Просматривают:   1 Анонимно





Макрос импорта координат из .txt файла
print | #
Новичок
Присоединился:
2007/9/20 11:48
Сообщений: 1
Offline
У меня в процессе появилось множество вопросов. вот примерный алгоритм импорта.
Макрос импорта координат в Corel Draw 12, с использованием Visual Basic
Окно макроса:
вот здесь
как сделать данное окно?
Формат записи в импортируемом .txt файле
(«А» «В» «С» «D»)

b1,6505005.366,368624.283,41.945,
…………………………………………
188,6504998.075,367955.600,46.650,

«А» - номер точки
«В» - координата У
«С» - координата Х
«D» - высотная отметка точки

1 создается объект окружность с диаметром =
(100* «диаметр указанный в макросе» * «масштаб указанный в макросе»)/1 000 000 000
(после п. 6 диаметр окружности получится указанным в макросе)

*так создается окружность произвольного диаметра с последующим присвоением ей необходимого диаметра.
Dim s1 As Shape
Set s1 = ActiveLayer.CreateEllipse2(3.238886, 8.588012, 1.008256, -1.019587, 90#, 90#, False)
s1.Fill.ApplyNoFill
s1.Outline.SetProperties 0.003, OutlineStyles(0), CreateCMYKColor(0, 0, 0, 100), ArrowHeads(0), ArrowHeads(0), False, False, cdrOutlineButtLineCaps, cdrOutlineMiterLineJoin, 0#, 100
ActiveDocument.ReferencePoint = cdrCenter
s1.SetSize 1.968504, 1.968504
Как сделать создание окружности с уже заданным диаметром?
Как задать необходимый диаметр посредством вычисления формулы

2 импортируем координату «С» и помножаем на 0.0001
3 импортируем координаты «В» и помножаем на 0.0001
(п.п.2,3, для того чтобы 7-значная координата влезла в размерность сетки в Corel в мм)
(в .txt файле десятые доли числа разделены «.», а числа разделены между собой «,»)
эхм…эти пункты может просто попутные. Просто я не знаю как без этого обойтись
[color=CC0000]п.п.2,3, для того чтобы 7-значная координата влезла в размерность сетки в Corel в мм)
(в .txt файле десятые доли числа разделены «.», а числа разделены между собой «,»)
эхм…эти пункты может просто попутные. Просто я не знаю как без этого обойтись
.


4 присваиваем окружности координаты Х = «С», У = «В»
(импортированные точки в Corel получились в масштабе 1:1 00 000 00)
s1.SetPosition 3.937008, 3.937008
нужно разобраться что из них Х что У.
как сделать чтобы вписывалось в координаты импортированное число умноженное на 0.0001
4.а импортирование всех данных из .txt файла
эхм…не знаю как задать повторение данной операции для каждой точки, до последней точки. Количество точек каждый раз различное

5 над каждой окружностью подписать соответствующее значение «А», а под «D»
(или же если можно сделать таковую возможность выбора в окне макроса что будет под, а что над)
(подвязать к этому пункту вариант выбора размера и шрифта)
(отступ вверх и вниз от середины окружности до середины надписи (мм) =
(«диаметр окружности»/2)+0.4+((«размер шрифта»*0.2)/2)

Вообще не представляю как это может происходить?. Есть макрос где есть нечто похожее но он с паролем, его мне не посмотреть в редакторе макроса. Могу скинуть если нужен
6 выделение всех импортируемых точек
dup1.AddToSelection
Dim s2 As Shape
Set s2 = ActiveSelection.Group
Так я получил запись макроса в кореле. Но мне не понятно какая область выделяется? Размерность? Необходимо чтобы выделялись все импортируемые точки
7 масштабируем до выбранного масштаба в макросе (пример 1:2000)
формула: «значение» = (1 00 000 00 * 100)/2000
данное «значение» необходимо вписать в «коэффициент масштаба» в Corel и по Х и по У
*данная формула – я изменил с 100%100% на 50%50%
s2.SetSize 1.023622, 1.023622
какое было искомое значение
8 данную группу переносим в 0,0
s2.SetPosition 0#,0#
знаки #,# что они значат?

Опубликовано: 2007/9/20 12:00







Форма быстрого ответа
ЛогинИмя   Пароль   Логин
Сообщение:          

      ПРИМЕР


 [далее...]
Уведомлять о сообщениях в теме.



[Настройки поиска]