Добро пожаловать!

Войдите или зарегистрируйтесь сейчас!

Войти

Полезные программы от Philin (строительство). VBA

Тема в разделе "Autodesk", создана пользователем Philin, 20 ноя 2010.

  1. MilkKA

    Регистрация:
    15 авг 2012
    Сообщения:
    17
    Симпатии:
    3
    У меня тоже самое. Только я сбрасывал с Топкона в формате GTS-7, но при этом пришлось выбрать Sokkia SET (SDR33).
     
    #321
  2. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.557
    Симпатии:
    2.084
    Адрес:
    Москва
    Вижу на скрине "Принято килобайт..." и гигантское число. Такое может быть только если у вас слишком медленный компьютер и он просто не успевает... Он ничего не принял!
    В некоторых случаях такое может произойти (только для формата Sokkia) если порт выбран, он существует, но прибор передаёт в другой порт.
    Если выбранный Вами порт не существует, то программа об этом сразу скажет. Она не будет работать с отсутствующим в системе портом т.к. всегда проверяет его наличие до попытки приёма данных.

    Для решения этой проблемы надо:
    - желательно пользоваться последней версией, а не версией 2.6
    - запустить программу
    - выбрать все нужные параметры порта
    - нажать кнопку для приёма в программе
    - ПОДОЖДАТЬ 1-2 секунды
    - нажать кнопку передачи на тахеометре

    Нет, не тоже самое. Вы пытаетесь передать данные в формате Nikon (изменённом TOPCON и названным GTS-7) в котором есть спецсимволы о которых не знает программа... при этом указываете формат данных SDR33.
    Т.к. я чаще всего работаю с форматом Sokkia SDR33, то и проблем с ним меньше. Он не будет писать об ошибках, если принятые данные хоть как-то читаются и вменяемы. Он просто напишет, что принято столько-то килобайт, но т.к. он не сможет распознать их как данные, то и начертить ничего не сможет.

    Вот так оно и выглядит:
    [​IMG]

    Данные текстовые. Все параметры порта явно правильные (данные читаются). Только это не SDR, поэтому и пишется "принято килобайт 6", но при этом точек принято 0.

    Вот так будет выглядеть окно программы, если из COM порта получены правильно данные SDR:
    [​IMG]

    Вот так будет выглядеть окно программы, если из COM порта правильно получены данные TOPCON:
    [​IMG]
    --- Сообщения объединены, 1 окт 2013, Оригинальное время сообщения: 1 окт 2013 ---
    Здравствуйте.
    Не вижу проблемы. Во всяком случае для WinXP тут проблемы нет. Надеюсь, что в Win7 тоже это решается аналогично.
    Любой COM порт можно переместить на любой свободный номер. Делается это в диспетчере устройств. Примерно так:
    [​IMG]


    PS Если Win7 этого не умеет делать, то все претензии к разработчику операционной системы, т.е. к Microsoft.
    --- Сообщения объединены, 1 окт 2013 ---
    ::rolleyes24.gif::

    Осталось немного подумать головой и получить данные вот так:
    [​IMG]

    Потом, не закрывая программы, ещё раз получить данные уже вот так:
    [​IMG]

    Потом закроем программу и видим на чертеже вот это:
    [​IMG]

    Здесь только один минус, точки в итоге продублируются.
     
    #322
  3. MilkKA

    Регистрация:
    15 авг 2012
    Сообщения:
    17
    Симпатии:
    3
    Спасибо.То что на картинке...похожий вид у меня принимает в формате GTS-6, через мою программу. Но потом, через эту же программу я перевожу в GTS-7 и тогда уже получал тот самый файл (как оказывается, формат Никона). Я еще внимательно попробую в формате GTS-6 перекинуть, через вашу программку.
     
    #323
  4. Ryabinin

    Регистрация:
    6 мар 2013
    Сообщения:
    22
    Симпатии:
    1
    Дело то как раз в том Что этот порт работает в sokkia link, но ни в какую не принимает в автокаде!
    --- Сообщения объединены, 1 окт 2013, Оригинальное время сообщения: 1 окт 2013 ---
     
    #324
  5. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.557
    Симпатии:
    2.084
    Адрес:
    Москва
    Я понял следующее:
    - Windows7 x64

    Не понял вот что:
    - версия автокад какая?
    - разрядность версии автокад какая? (x32 или x64) То, что Win7 x64 не означает, что установлен автокад такой же разрядности... поэтому и спрашиваю.
    - прибор Sokkia надеюсь не старый 15-летней давности с форматом данных SDR20?

    Провожу проверку.
    - операционная система Windows7 x64 (рус)
    [​IMG][​IMG]
    - автокад 2012 x64 (рус)
    - программа COM2aCAD версии 2.8 (последняя на текущий момент)
    - читаю данные через COM порт из прибора Sokkia
    [​IMG]
    - данные считаны из порта
    [​IMG]
    - проверяю на чертеже эти точки
    [​IMG]
     
    #325
  6. Ryabinin

    Регистрация:
    6 мар 2013
    Сообщения:
    22
    Симпатии:
    1
    Безымянный.png Безымянный1.png Безымянный3.png
    Безымянный4.png

    вот так все выглядит я ХЗ откуда ноги растут.
     
    #326
  7. borik

    Форумчанин

    Регистрация:
    29 июн 2011
    Сообщения:
    894
    Симпатии:
    578
    Адрес:
    Витебск
    Ryabinin,
    Попробуй скорость передачи уменьшить ...
     
    #327
  8. Ryabinin

    Регистрация:
    6 мар 2013
    Сообщения:
    22
    Симпатии:
    1
    пробовал 4800 не помогло!
     
    #328
  9. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.557
    Симпатии:
    2.084
    Адрес:
    Москва
    На свои вопросы ответ не получил.

    Скорость я бы снизил до 9600 и в приборе и в программе.

    Вот что будет, если не передавать никаких данных программе:
    [​IMG]
    Это число (выделено красным) показывает среднюю производительность процессора и оперативной памяти и больше ничего (чем оно больше, тем производительнее система).

    Вот что видно у Вас:
    [​IMG]




    Варианты:
    - неисправен кабель передачи
    - неверно указан порт (у вас там затёрто на скрине, но видно, что в системе штук 20 чем-то занятых COM портов)[​IMG]
    - слишком высокая скорость передачи
    - возможно драйверы USB-COM контроллера не подходят для Win7x64
    - жду ответа на вопросы, которые задавал ранее... причина может быть где-то там...

    PS Если хоть что-то идёт по кабелю в указанный порт от прибора в программу, то здесь [​IMG] это всегда можно увидеть. Если же тут остаётся поле с первоначальной надписью, то значит ничего не пришло.
     
    #329
  10. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.557
    Симпатии:
    2.084
    Адрес:
    Москва
    Вышла новая версия программы COM2aCAD. Скачать её можно в разделе "Ресурсы" форума.

    Спасибо MilkKA за тест при отладке программы.
     
    #330
  11. sidnick

    Регистрация:
    15 янв 2012
    Сообщения:
    3
    Симпатии:
    0
    Вопрос такого характера. После установки Вашей чудесной программы Автокад перестал открывать файлы в одном окне. Сама программа работает - все норм, спасибо. Читал про SDI и TASKBAR - не помогает. Файлы открываются с помощью laucher, тут тоже все норм. Закономерность заметил только после установки Вашей программы. На разных компах одно и тоже. На одном win8 x64 и autocad 2011, на другом win7pro x64, autocad 2010.
    Подскажите, что делать?
     
    #331
  12. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.557
    Симпатии:
    2.084
    Адрес:
    Москва
    О какой программе идёт речь?
    Ни одна из моих программ не изменяет глобальные переменные AutoCAD.
    Проблема не в моей программе т.к. она физически не в состоянии это сделать.

    Каким образом установлена и запускается программа?:
    1. на кнопку панели инструментов прописанную вручную по pdf инструкции
    2. на кнопку панели инструментов созданную через cui файл
    3. какой-то другой способ (их очень много)
    PS Устанавливал программы на AutoCAD с 2000 по 2013 и в операционных системах с Windows 95 по Win7 и ни разу это не влияло на глобальную переменную SDI... да и не могло влиять.
    А что у вас, я не знаю. Убить глобальную переменную автокад путём неправильного прописывания программы на кнопку невозможно физически. Зато её может убить:
    - вирус в системе
    - установка ломаного Microsoft Office (и автокад и офис ломаются через один общий системный файл. Одновременная их установка приводит к изменению и к полной невозможности дальнейшего восстановления системных переменных автокад). В таком случае гарантированно помочь может только переустановкаWindows и установка автокад без ломаного офиса (либо с лицензионным офисом)
    - сбой в системе
    - ещё что-нибудь
     
    #332
  13. monolit

    Форумчанин

    Регистрация:
    7 июн 2011
    Сообщения:
    124
    Симпатии:
    21
    пользуюсь акад 2013. как поставить все на кнопку знаю. но пишет"" Команда: _appload Не удается загрузить файл COM2ACAD.dvb.""что не так делаю, понимаю что руки кривоваты
     
    #333
  14. Robkiy

    Форумчанин

    Регистрация:
    15 июн 2012
    Сообщения:
    613
    Симпатии:
    84
    Адрес:
    Краснодар
    monolit, в первом посте архив с ПОДРОБНОЙ инструкцией

    Оффтоп
    на 13 нужен будет модуль ВБА качнуть ну и кнопку просто сделать с макросом - хотя я тоже тёмный в этом деле но инструкция рулит !!!
     
    #334
  15. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.557
    Симпатии:
    2.084
    Адрес:
    Москва
    Не стоит использовать _appload для загрузки VBA. Лучший вариант это _vbarun

    Для указанной программы макрос на кнопку будет выглядеть так:
    ^C^C_-vbarun COM2ACAD.dvb!COM2ACAD.StartProgram

    где красным выделено имя файла программы, зелёным - имя модуля в котором следует искать главную процедуру для запуска, синим - название процедуры для запуска. И не забываем разделители: пробел (между командой автокад и строкой параметров для неё), восклицательный знак (между именем файла и именем модуля), точка (между именем модуля и названием процедуры внутри модуля).
    Все мои программы написаны так, что модуль всегда имеет имя файла (без расширения), а главная процедура для запуска имеет название StartProgram. Всё это сделано для того чтобы пользователи не путались... если человек смог установить и запустить одну мою программу, то по аналогии с ней сможет запустить и любую другую программу.

    Прилагаю в архиве файл адаптации. Использовать его можно в Автокад 2008-2014. Содержит панель инструментов и кнопки для всех моих программ. Всё уже правильно прописано, достаточно встроить панель в автокад через адаптацию. Файл имеет расширение CUI, при адаптации в новых версиях автокад (2010-2014) загружать его надо как устаревший тип CUI (по умолчанию в этих версиях автокад файл адаптации стоит как CUIX).

    PS Все программы и иконки к ним надо предварительно сохранить в папке Support вашего автокад. В противном случае они будут недоступны для автокад.
    --- Сообщения объединены, 10 ноя 2013, Оригинальное время сообщения: 10 ноя 2013 ---
    Кто в наше время читает инструкции? ::wink24.gif::
     

    Вложения:

    #335
    Qvinto нравится это.
  16. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.557
    Симпатии:
    2.084
    Адрес:
    Москва
    Сейчас замедлил разработку всех программ. Балуюсь вот этим:
     
    #336
  17. Палыч

    Форумчанин

    Регистрация:
    16 июл 2007
    Сообщения:
    2.332
    Симпатии:
    176
    Адрес:
    Беларусь
    Даш поганять?::biggrin24.gif::
     
    #337
  18. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.557
    Симпатии:
    2.084
    Адрес:
    Москва
    Как только, так сразу ;)

    Она пока ещё сырая (на видео даже видна конечная отладочная таблица после окончания работы программы). Многие горизонтали чертит разорванными, потом их приходится объединять вручную в местах разрыва. Хотя и в таком виде гораздо облегчает работу... на том примере вручную начертить горизонтали это часа 4, а программа это делает за 5 секунд + до часа на доработку горизонталей вручную в сложных участках и стыковки в местах разрыва.
     
    #338
  19. Палыч

    Форумчанин

    Регистрация:
    16 июл 2007
    Сообщения:
    2.332
    Симпатии:
    176
    Адрес:
    Беларусь
    Как пожелание-точки с отметками должны лежать в слое аналогичном слою поверхности т. е. сама точка и все ее описания должна быть на уровне поверхности.
    --- Сообщения объединены, 10 ноя 2013, Оригинальное время сообщения: 10 ноя 2013 ---
    И возможность отрисовать горизонтали в выбраном контуре или контурах
     
    #339
  20. Philin

    Форумчанин

    Регистрация:
    1 фев 2008
    Сообщения:
    2.557
    Симпатии:
    2.084
    Адрес:
    Москва
    Это имеется ввиду?
    [​IMG]

    H точки = H горизонтали = H текста

    PS Горизонтали чертятся так как обычно чертит их человек. Жёстко привязываются к интерполированной точке, но сглаживаются так чтобы это было похоже на горизонталь, а не на ломаную линию.

    Конечно их можно изменить на жёсткую привязку к точкам при черчении, но... походить это начинает на что-то начерченное компьютером, а не человеком:
    [​IMG]

    на горизонтали это не очень похоже.
     
    #340

Поделиться этой страницей

  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление