Перейти к публикации

Рекомендованные сообщения

1 час назад, Blurp сказал:

даун прав насчет картиночников. Ну его нафиг енто апи

Да, татарский юноша))) правильный вывод!

Ссылка на сообщение
Поделиться на других сайтах


Ну если уж катией делать без API любую трубу - то 2 команды и 2 формулы дадут кривую с точностью в пару микрон.

Ссылка на сообщение
Поделиться на других сайтах

Да много где сделать можно, даже палкой в песочнице. Там не до микрон будет, зато сам))) без всяких API.

А потом с местными детишками ещё и конфигуратор замутить, основываясь на том у кого какая лопатка-копалка.

Ссылка на сообщение
Поделиться на других сайтах
42 минуты назад, streamdown сказал:

Да, татарский юноша))) правильный вывод!

Тащем-то моя Blurp, а не @Bully :rolleyes:

Хотя может это и есть

В 18.01.2018 в 15:29, Sla_68 сказал:

интеллектуальный троллинг

с намеком, типа всё комьюнити тут на одно татарское лицо. :g:

 

Ссылка на сообщение
Поделиться на других сайтах
  • 4 недели спустя...

Добрый вечер. Столкнулся со следующими неудобствами. Есть объекты эскиза -SketchSegment. При работе с объектами не удобно оперировать их точками SketchPoint . Т е мне приходится извлекать точки отдельным массивом и сопоставлять их координаты разными методами. Нет ли способа извлекать точки из объектов -SketchSegment ?

Ссылка на сообщение
Поделиться на других сайтах

Может как всегда? Пойдём от обратного.

Что вообще надо делать со SketchSegment?

Ссылка на сообщение
Поделиться на других сайтах
10 минут назад, streamdown сказал:

Может как всегда? Пойдём от обратного.

Что вообще надо делать со SketchSegment?

Вывести точку старта и точку финиша кривой. Вчера рылся  в макросах и нашел.

Set swSkSeg1 = Segments(0)
      Set swSkSeg2 = Segments(1)
      Set pt11 = swSkSeg1.GetStartPoint2
      Set pt12 = swSkSeg1.GetEndPoint2

Но проблема хоть и решена но осталось не понятно вот что . При при объявлении переменных я обычно легко могу увидеть все методы , при работе с ними. Жмешь пробел после точки и появляется выпадающий список. Если нужно по алфавиту вспомнить то пишешь от 1 и более символов после точки   Set pt11 = swSkSeg1.Get..... И к сожалению остутсвуют GetStartPoint2 в этом списке. Почему так? Из за этого можно упустить много чего полезного из вида?

Ссылка на сообщение
Поделиться на других сайтах

@Sla_68 потому что swSkSeg1 должен быть конкретным типом, а не базовым классом.

Dim swSketchCurrLine As SldWorks.SketchLine
Dim swStartPt As SldWorks.SketchPoint
Set swStartPt = swSketchCurrLine.GetStartPoint2

Всё подсвечивает

36 минут назад, Sla_68 сказал:

Вывести точку старта и точку финиша кривой

Вот сейчас с ужасом представляю, а как вы раньше то их находили? )))

Изменено пользователем streamdown
Ссылка на сообщение
Поделиться на других сайтах

Вот сейчас с ужасом представляю, а как вы раньше то их находили? )))

Не нужно .... это оочень страшный страшный говнокод... Куча циклов, координаты и их сравнение..

Ссылка на сообщение
Поделиться на других сайтах

@Sla_68 Кстати, по этому поводу есть ещё вариант. Тож рабочий.

Можно находить constrain (привязки) для линий. И по ним уже брать координаты.

Ссылка на сообщение
Поделиться на других сайтах

Доброго дня. Очередная непонятая проблема возникла с созданием и переключением конфигураций.

Когда я создаю новую конфигурацию из "default" (например "raspil")  , raspil становится активной. Я делаю вырез , а затем хочу переключить на default

При  переключении на "default"  солидворкс вылетает.

Не пойму в чем заключается суть проблемы.

А код выглядит вот так:

Set swConfMgr = part.ConfigurationManager '
    Set swConf = swConfMgr.ActiveConfiguration 'конфиг по умолчанию
    Set rConf = swConfMgr.AddConfiguration("raspil", "raspil comment", "raspil alternate name", 1, swConf.Name, "Derived description")
    

krepface.SelectByMark False, 2
part.SketchManager.InsertSketch True 'вставка 2D эскиза на рабочей плоскости
Set swSketch3 = swApp.ActiveDoc.GetActiveSketch2
swSketch3.Name = "otrez"
boolstatus = part.SketchManager.SketchUseEdge3(False, False)

skSegment1.SelectByMark 0, 2
skSegment2.SelectByMark 1, 2
skSegment11.SelectByMark 1, 2
skSegment22.SelectByMark 1, 2
boolstatus = part.SketchOffsetEntities2(0.1, False, False) 'смещение объектов
  Set myFeature = part.FeatureManager.FeatureCut3(True, False, False, 1, 0, 0.002, 0.002, False, False, False, False, 0, 0, False, False, False, False, False, True, True, True, True, False, 0, 0, False)
  If myFeature Is Nothing Then
    part.SketchManager.InsertSketch True 'выход из эскиза
    swSketch3.SelectByMark False, 2
    part.EditDelete
  Else
    boolstatus = part.Extension.SelectByID2(myFeature.Name, "BODYFEATURE", 0, 0, 0, False, 0, Nothing, 0)
    part.EditSuppress2 'погасить

  End If
  boolstatus = part.ShowConfiguration2(swConf.Name) 'переключает на default
    
End Sub

 

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, Sla_68 сказал:

ShowConfiguration2(swConf.Name)

Тут точно то что нужно? Не null, не потерянный контекст конфигурации... Может лучше в параметр имя передать как string

Изменено пользователем streamdown
Ссылка на сообщение
Поделиться на других сайтах

Да , swConf.Name  видает "default".  Я немного поменял сейчас порядок кода и понял что виной всему вырез и все фичи  которые были созданы сразу после создания  rConf. Пришлось сделать так, все фичи делаем заранее , затем новую конфигурацию, а потом гасим то что нужно в фичах.

 

Ссылка на сообщение
Поделиться на других сайтах

А если так:

Set rConf = swConfMgr.AddConfiguration("raspil", "raspil comment", "raspil alternate name", swConfigOption_UseAlternateName + swConfigOption_SuppressByDefault, swConf.Name, "Derived description")

 

@Sla_68 спрашивал или нет, не помню...

 

зачем вы используете в параметрах значения Enum а не сами Enum? Вам кажется намного понятнее четвёртый параметр в AddConfiguration как "1" чем как полноценный swConfigOption_UseAlternateName ? :smile:

Ещё вопрос: конфигурация обязательно должна быть производной? Раз вы указали имя родительской.

Изменено пользователем streamdown
Ссылка на сообщение
Поделиться на других сайтах

Прошу сильно

7 часов назад, streamdown сказал:

А если так:


Set rConf = swConfMgr.AddConfiguration("raspil", "raspil comment", "raspil alternate name", swConfigOption_UseAlternateName + swConfigOption_SuppressByDefault, swConf.Name, "Derived description")

 

@Sla_68 спрашивал или нет, не помню...

 

зачем вы используете в параметрах значения Enum а не сами Enum? Вам кажется намного понятнее четвёртый параметр в AddConfiguration как "1" чем как полноценный swConfigOption_UseAlternateName ? :smile:

Ещё вопрос: конфигурация обязательно должна быть производной? Раз вы указали имя родительской.

Нет, я еще не использую вообще ничего. Все это взято и адаптировано из хелпа к апи. И конечно конфигурация может быть любой. Вообще, проблему я уже выше писал что обошел, но неприятный осадок остался..Причина так и не нашлась.

Ссылка на сообщение
Поделиться на других сайтах
9 часов назад, Sla_68 сказал:

из хелпа к апи

Будьте выше))) делайте красиво и для себя.

9 часов назад, Sla_68 сказал:

обошел

Ну тож не хорошо. Оберните в try-catch (или что там у вас в бейсике) и посмотрите какую ошибку покажет.

Ссылка на сообщение
Поделиться на других сайтах
18 минут назад, streamdown сказал:

Оберните в try-catch

Не материтесь , я не понимаю смысл ..

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Sla_68 сказал:

Не материтесь

Да с вашим VBA только так и приходится.

 

Оберните вашу последнюю строчку так:

On Error GoTo ErrorHandler:
boolstatus = Part.ShowConfiguration2(swConf.Name)
Exit Sub  '(this stops the error handler from running when there is no error!)
ErrorHandler:
  MsgBox "An error occured -  error  " & Err.Number & ": " & Err.Description
.....

End Sub

 

Изменено пользователем streamdown
Ссылка на сообщение
Поделиться на других сайтах

Нет, это другой тип ошибок. Когда ON ERROR, то  макрос останавливается и выдает сообщение об ошибке. А в данном случает макрос полностью отрабатывает. А потом при при работе в графическом окне происходит обвал системы.

Ссылка на сообщение
Поделиться на других сайтах

Аааа...так бы и написали.

Тогда добавьте после переключения конфигурации

swModel.ForceRebuild3(False)

swModel.GraphicsRedraw()

по идее, прям в макросе должно всё свалиться. Если, конечно, виноват код.

Изменено пользователем streamdown
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • AlexArt
      Ну допустим, ты и на другом ресурсе это опубликовал. А не коммуниздил. Но вот продвигать воровство от государства, ворующее из Вики, это верх мерзости.
    • maxx2000
      Ах, да. Фильтры выбора добавили. Теперь можно выбрать только то что видно на первом плане, а не вместе с тем что с обратной стороны детали. В общем надо обновляться. Как раз работёнка на прессформу нарисовалась 
    • maxx2000
      Причина того - Кроилово. Кроилово всегда приводит к попадалову. Месяц простоял сколько мильонов деревянных потеряли? Вопрос риторический. И ещё будет стоять. Как памятник человеческой глупости и жадности.
    • AlexKaz
      "9 июля 1968 года на мышах был проведен самый знаменитый эксперимент американского ученого-этолога Джона Кэлхуна «Вселенная-25». Суть опыта заключалась в создании идеальных условий, где мыши могли бы жить и размножаться, не ведая никаких забот, вдали от хищников и в отсутствие эпидемий и заболеваний. Для этих целей ученый построил специальный загон, куда были помещены четыре пары белых мышей (самцов и самок). В распоряжении мышей всегда была чистая вода и еда в изобилии, специальные гнезда, где можно обустроить себе жилище ― гнезд в загоне хватало для проживания нескольких тысяч мышей. Температура в загоне в среднем составляла около 20 ℃ и была комфортной для мышей. Животные не подвергались никаким влияниям извне и жили в идеальных условиях в свое удовольствие. А дальше началось самое интересное. На первом этапе эксперимента мыши хорошо размножались, вели активный образ жизни, охотно играли. На следующей фазе эксперимента мыши стали есть меньше, перестали наедаться до отвала. На третьей фазе эксперимента, когда в загоне были уже сотни мышей, произошло распределение социальных ролей, стала ярко выраженной иерархия, клановость. Появились так называемые отверженные ― молодые особи, которых другие, взрослые мыши сгоняли в центр загона, не давали им вести нормальный образ жизни, причиняли физический вред. В природе такое, наверное, было бы невозможно, ведь эти мыши-агрессоры просто не дожили бы до старости: их бы съели хищники. Но в загоне Кэлхуна хищников не было, и взрослые мыши начали попросту издеваться над молодняком. Образовались две большие группировки: самцы-одиночки и самки-одиночки. При этом самки-одиночки отказывались спариваться <с менее статусными многочисленными молодыми самцами и с оставшимися старыми статусными> и отвергали ухаживания самцов. У мышей стал проявляться тотальный индивидуализм, мыши не стремились создать семью. На последней, четвертой стадии мышиная популяция стала сокращаться. Появились самцы, которых сам Кэлхун назвал «красивыми» (англ. beautiful ones), из-за отсутствия ран и рубцов. <В оригинале: They never engaged in sexual approaches toward females, and they never engaged in fighting, and so they had no wound or scar tissue. Thus their pelage remained in excellent condition. - Дословный перевод: Они никогда не прибегали к сексуальным подходам к самкам, и они никогда не участвовали в боях, и поэтому у них не было ран или рубцовой ткани. Таким образом, их шерсть сохранилась в отличном состоянии.> Эти мыши не вступали в борьбу за самок и территорию, не проявляли активности к размножению и только питались, спали и чистили шёрстку. У мышей стали проявляться различные формы девиантного поведения, вспышки агрессии. Самки стали проявлять агрессию, защищать себя сами, стали умерщвлять своих детенышей, а затем окончательно отказались размножаться. На пике эксперимента в загоне одновременно проживало чуть более двух тыс. мышей. Еды и гнезд было достаточно для дальнейшего роста популяции, но через четыре года после начала эксперимента Кэлхун остановил свой опыт, потому что в загоне осталось чуть более сотни мышей, и все они уже вышли из репродуктивного возраста. По итогам эксперимента Кэлхун пришел к выводу, что достижение определенной плотности населения и заполнение социальных ролей в популяции приводит к распаду общества" https://physicsoflife.pl/dict/pic/calhoun/calhoun.. https://scientificrussia.ru/articles/utopiya-dlya-mys.. https://ru.wikipedia.org/wiki/Кэлхун,_Джон_(этолог)
    • gudstartup
      @Koels вот в чем дело пока ds609 это предупреждение поэтому F может и не появится если sv601 это значит ошибка. возможно при нагреве радиатора серво определяет это как предупреждение или ваш вентилятор крутиться медленнее чем оригинальный и серва думает что он встал хотяпри этом обычно на экране в строке состояния FAN.мигает больше у меня вариантов нет....  
    • ДОБРЯК
      Решите любым алгоритмом. Тогда будет конструктивный разговор. :=)
    • Fedor
      https://en.wikipedia.org/wiki/List_of_numerical_analysis_topics#Eigenvalue_algorithms     :) 
    • Юрий К.Ф.
      Добрый день. Не нашёл тут тему по стойке Китайско Китайской)) Lynuc N3ME. Видать мне так повезло с её наличием)) Приобрели 5-ти осевой Китаец. В б/у состоянии после удара по оси Z. Отремонтировали по механике, заменили батареи на драйверах, выставили лимиты. Всё Ок. Пригласили со стороны людей которые бы разобрались по операторской части. Те два выходных ковырялись, после сказали покажут расскажут, но за огромные деньги. Не сошлись. После месяц станок простоял, когда включили перестал реагировать на регулировку скорости шпинделя. То есть в режиме Jog, включаем обороты, которые стандартно 2140-2149 об/мин. При регулировке процетности не меняются (сама процентность показывает на мониторе). Так же при включении оборотов через команду M03S300 или другое значение, скорость так же показывает 2140-2149 об/мин. Грешить на тех товарищей с которыми не сошлись по деньгам для обучения, как то не хочется. Поковырялся в настройках шпинделя, вроде всё в норме. Проводку на шпинделе прозвонил, целая. В чём причина, не понятна. Кто нибудь сталкивался с подобным, или с подобной стойкой? Может подсказать варианты причины подобного?
    • ДОБРЯК
    • Fedor
      https://en.wikipedia.org/wiki/Eigenvalue_algorithm   Вот , кстати, важное свойство которое раньше встречал у Стренга. :)    http://elibrary.bsu.edu.az/files/kitablar/1022.pdf   
×
×
  • Создать...