функция LineZ через Avenu

0 голосов
спросил 14 Апр, 05 от Гость (210,080 баллов) в категории Программные продукты Esri
Добрый день такая проблема через AVenu пытаюсь нарисовать вертикальную 3d линию задаю координаты (X,Y,Z) для одной точки и (X,Y, Z+8) для другой, должна получится вертикальная линия длинной 8 если запросить характеристики Линии то начальная точка и конечная точка правильные и серидина линии тоже правельные, но на карте либл плоской, либо трехмерной рисуется линии с оченьбольшой высотой и бесконечным напровлением конечной точки кудато в лево или внизimage, если кто знает в чем прикол то подскажите...

10 Ответы

0 голосов
ответил 19 Апр, 05 от Гость (210,080 баллов)

хм... а попробуй (X+0.000002, Y, Z+8)

0 голосов
ответил 19 Апр, 05 от Гость (210,080 баллов)

Пробовал таже ерунда только направление бесконечной линии чуть чуть изменяется, кокто совсем ни как, даже на других компах пробовол может это версия ArcView у меня такая, хотя вродибы пропачиная 3.2а

0 голосов
ответил 27 Апр, 05 от Гость (210,080 баллов)
В определенных масштабах 0 и менее, глюкают и обычные линии и полигоны. Шейп выложи что-ли тут: www.webfile.ru
0 голосов
ответил 27 Апр, 05 от Гость (210,080 баллов)

Вроди бы машстаб не такой уж мелкий координаты даны в метрах высота линии должна быть около 8-9. жди шейп

0 голосов
ответил 27 Апр, 05 от Гость (210,080 баллов)

точечная тема

результат построения линий

скрипт

 

 webfile.ru/278162

0 голосов
ответил 07 Май, 05 от Гость (210,080 баллов)
Посмотрел - это 99% глюки ArcView3x в классе LineZ.
Начав редактирование темы, начал ее двигать, получались еще более сильные глюки отображения: скачят оба конца линии и длина, на первый взгляд бессистемно.

Выход: поменяй тип LineZ на PolyLineZ - будет работать.
LineZ.Make(p1,p2) >> PolyLineZ.Make({{p1,p2}})
0 голосов
ответил 11 Май, 05 от Гость (210,080 баллов)
Я так пробовал у меня выскакивает Segmintation volyation, что то типа того, но попробую ещё раз.
0 голосов
ответил 11 Май, 05 от Гость (210,080 баллов)
Поди забыл ArcZ вместо LineZ:

newT=Ftab.MakeNew("$HOME\test1.dbf".AsFileName,LineZ) >>
newT=Ftab.MakeNew("$HOME\test1.dbf".AsFileName,ArcZ)

Оффтопить начали остальное сюда: zx_tool_support@mail.ru
0 голосов
ответил 12 Май, 05 от Гость (210,080 баллов)
Я оговорился не ArcZ, a PolyLineZ !
newT=Ftab.MakeNew("$HOME\test1.dbf".AsFileName,PolyLineZ)

Вот рабочий скрипт, создающий PolyLineZ шейп с пресловутой 3D линией:

tv=av.getActiveDoc
th=tv.getActiveThemes.get(0)
newT=Ftab.MakeNew("C:\temp\_test4.dbf".AsFileName,PolyLineZ)
rez=Ftheme.Make(newT)
rez.getFtab.BeginTransaction
VID=Field.Make("ID",#FIELD_FLOAT,16,0)
rez.getFtab.addFields({VID})

p1=PointZ.make(100,90,26) p2=PointZ.make(120,80,31)
stolb=PolyLineZ.Make({{p1,p2}})

NN=rez.getFtab.addRecord
rez.getFtab.SetValue(rez.getFtab.FindField("Shape"),NN,stolb )
rez.getFtab.SetValue(rez.getFtab.FindField("ID"),NN,0)
rez.getFtab.EndTransaction
rez.getFtab.Flush
tv.addTheme(rez)
0 голосов
ответил 12 Май, 05 от Гость (210,080 баллов)

Вроде заработало Спасибо за help///

 

тема закрыта

Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...