Проблема с проецированием в эскиз.

Автор Тема: Проблема с проецированием в эскиз.  (Прочитано 981 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн R.I.ChernovАвтор темы

  • ADN Club
  • ****
  • Сообщений: 455
  • Карма: 16
Re: Проблема с проецированием в эскиз.
« Ответ #15 : 06-11-2019, 18:42:39 »
т.е. сначала проецируем потом строим
Да в том то и дело, что при любом другом проецировании все работает, только при проецировании начала координат такая клоака. Реально похоже на глюк! Ниже пример, когда на эскиз проецируется (все в координаты 0,0) сначала начало координат, потом точка другого эскиза, потом из этого же места строится отрезок, и нет никаких проблем. Причем если сначала построить отрезок, а котом спроецировать точку эскиза - тоже проблем нет. Но если начало координат проецируется после построения отрезка, или после проецирования (короче когда в этой точке уже что-то начерчено), тогда тупо все зависает (короче последовательностью трех последних строк можно поиграться кому интересно).

       
Код - C# [Выбрать]
  1. private void projection_test_2()
  2.         {
  3.             string TemplName = "C:/Users/Public/Documents/Autodesk/Inventor 2017/Templates/Обычный.ipt";
  4.             Inventor.PartDocument oDoc = (Inventor.PartDocument)oApp.Documents.
  5.                                             Add(Inventor.DocumentTypeEnum.kPartDocumentObject, TemplName);
  6.  
  7.             Inventor.PartComponentDefinition oCD = oDoc.ComponentDefinition;
  8.  
  9.             Inventor.TransientGeometry oTG = oApp.TransientGeometry;
  10.             Inventor.PlanarSketch oSketch = oCD.Sketches.Add(oCD.WorkPlanes[3]);
  11.  
  12.             ii.SketchLine sl= oSketch.SketchLines.AddByTwoPoints(create.tg.point2D(0, 0), create.tg.point2D(50, 0));
  13.  
  14.             Inventor.PlanarSketch oSketch_2 = oCD.Sketches.Add(oCD.WorkPlanes[3]);
  15.  
  16.              // эта строка всегда должна быть первой (или отсутствовать), последовательность двух других не важна
  17.             oSketch_2.AddByProjectingEntity(oCD.WorkPoints[1]);
  18.             oSketch_2.AddByProjectingEntity(sl.StartSketchPoint);
  19.             ii.SketchLine sl_2 = oSketch_2.SketchLines.AddByTwoPoints(create.tg.point2D(0, 0), create.tg.point2D(0, 50));
  20.  
  21.         }
В программировании я новичок...но ненадолго! ;)

Отмечено как Решение R.I.Chernov 28-11-2019, 03:09:08

Оффлайн mikazakov

  • ADN
  • *
  • Сообщений: 385
  • Карма: 112
  • Skype: mikazakov@mail.ru
Re: Проблема с проецированием в эскиз.
« Ответ #16 : 08-11-2019, 13:03:54 »
R.I.Chernov,
Пришел ответ из ADN

Issue can be reproducible. For further investigation, a change request is created with engineering team on this and details are given below.
The Change Request for this is: ID:INVGEN - 35009 - "Error on projecting work point after point creation via Inventor API"


В общем, признаются что это баг

Оффлайн R.I.ChernovАвтор темы

  • ADN Club
  • ****
  • Сообщений: 455
  • Карма: 16
Re: Проблема с проецированием в эскиз.
« Ответ #17 : 28-11-2019, 03:09:27 »
Спасибо за помощь!
В программировании я новичок...но ненадолго! ;)