Jump to content

Recommended Posts

Вопрос такой образовался отчего у ни разу не сохранявшегося документа

ThisDrawing.Name= ThisDrawing.FullName

очевидно, что

ThisDrawing.Name должно быть равно имени чертежа, а

ThisDrawing.FullName пустое значение...

офф блин косячите на ровном месте

 

Edited by doctorraz
потому что, не дефект
Link to comment
Share on other sites

и вдогон..

отчего у ни разу не сохранявшегося чертежа 

ThisDrawing.Name=Без имени0    

а у сохранявшегося

ThisDrawing.Name=Без имени0.dwg

Вопрос к тому: это осмысленное решение идти своим путем, или опять накосячили?

Link to comment
Share on other sites

4 часа назад, doctorraz сказал:

 

отчего у ни разу не сохранявшегося чертежа 

ThisDrawing.Name=Без имени0    

а у сохранявшегося

ThisDrawing.Name=Без имени0.dwg

Вопрос к тому: это осмысленное решение идти своим путем, или опять накосячили?

а это как раз достаточно логично. до сохранения - неизвестно, в каком формате его будут сохранять (может, в dxf?). соответственно, расширение появляется только после сэйва.
для сравнения - открываем новый файл в пэйнтбраше - он просто Untitled. а расширение приклеивается после сэйва в зависимости от.
 

  • Like 2
Link to comment
Share on other sites

6 минут назад, Lion007 сказал:

это как раз достаточно логично

Убедил, значит своим путем..

А с FullName что?

Я пока конечно костылик подставил..

Без разницы на что проверять ="" или  like "*\*"

Edited by doctorraz
Link to comment
Share on other sites

а с фулнэймом... фиг его знает, скорее всего это по принципу "ответили, что знаем" :)
а что, где-то написано, что он должен быть пустой?

Link to comment
Share on other sites

35 минут назад, Lion007 сказал:

а что, где-то написано, что он должен быть пустой?

Ты жэж сам выше написал.. пока файл не сохранен хоть раз расширение неизвестно и это логично..

С какой стати по этой логике должен быть полный путь-полное имя?

Иль крест снять или трусы надеть..

Нанодев определиться надобно)))

Кстати я не заморачивался, как с этим в других программах.. блокноте, пэйнте.. 

Но имха пока хоть раз не сохранили, fullname еще как бэ нет

Edited by doctorraz
Link to comment
Share on other sites

3 минуты назад, doctorraz сказал:

Ты жэж сам выше написал.. пока файл не сохранен хоть раз расширение неизвестно и это логично..

С какой стати по этой логике должен быть полный путь?

Иль крест снять или трусы надеть..

Нанодев опредеоиться надобно)))

Кстати я не заморачивался, как с этим в других программах.. блокноте, пэйнте.. 

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

  • Like 1
  • Sad 1
Link to comment
Share on other sites

Офф Я не топлю за то что чтото должно быть сделано так или иначе, но

Немного поковыряв ActiveX нано у меня создается стойкое ощущение какойто его  гаражности кустарности.. типа  на коленке наваяли, раскрасили в яркие цвета отполировали и продают.. импортозамещение под именем nanoCAD.

-------------------------

Я сегодня пять раз (5 !!!)) пытался вставить из одного файла в другой, четыре файла внешней ссылки, через буфер вин.. каждый раз что нана 20.1, что 21 падал и вис ..

В автокаде эта операция за раз.. секунды и без вылетов..

 
44 минуты назад, Lion007 сказал:

не возьмусь утверждать, что это правильно -

Ну ежели никто не знает, как правильно, пусть менеджеры отдадут приказ сделать, как сделали до них те кто знают, как нада....

 

добавлено через 5 минут
44 минуты назад, Lion007 сказал:

фулнэйм (идеологически) это

Это адрес файла на диске..

Который однозначно идентифицирует файл в системе..

Типа фио прописка и паспортные данные..

Без всего этого бомж

Т.е. пока на диск не записан, файла нет. Нет и полного пути к тому чего нет.

Имя есть а пути нет, к тому чего нет)))

Edited by doctorraz
поправил с компа, смягчил и конкретизировал
  • Like 3
  • Haha 1
Link to comment
Share on other sites

в продолжение разговора

(setq dn_old (getvar "dwgprefix"))
(setq dn (getvar "dwgname"))

у сохраненного и ни разу не сохранявшегося файла разные

вернее у ни разу не сохранявшегося файла dwgprefix и dwgname пустые

 

Link to comment
Share on other sites

По-хорошему, лучше реализовывать такого рода фичи в привычном ключе, особенно в связи с наличием аналога.

Но, строго говоря, эти переменные относятся только к сессии редактирования, непосредственно не затрагивая при этом содержимого файла.

Следовательно, разработчик может самостоятельно выстраивать алгоритм их заполнения, не нарушив при этом структуры DWG (за что собственно и подписывался всегда нанософт).

Ну и до кучи: в справке к АС

Спойлер

image.png.047b8866daa273ba67c831835bd9dd35.png

 

Похожая тема и по другим переменным. 

Т.е. AC не заморачивается с подробным описанием таких переменных, что, предполагаю (!!!!),  позволяет использовать их достаточно в вольном стиле

Link to comment
Share on other sites

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

позволяет использовать их достаточно в вольном стиле

и чему мог бы быть равен dwgprefix  ни разу не сохранявшегося файла? Есть варианты?

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

вернее у ни разу не сохранявшегося файла dwgprefix и dwgname пустые

это , как раз норма (С)

---------------------

В 20.05.2021 в 08:46, doctorraz сказал:

Вопрос такой образовался отчего у ни разу не сохранявшегося документа

ThisDrawing.Name= ThisDrawing.FullName

вопрос в этом, как так то?

 

Спойлер

image.png.c5049f9288ae934bb7a4130912ff37eb.png

Спойлер

image.png.5770accbfcfb4ec3cd81cc6319808a67.png

а ThisDrawing.Name="Без имени4"

Edited by doctorraz
Link to comment
Share on other sites

1 минуту назад, doctorraz сказал:

чему мог бы быть равен dwgprefix  ни разу не сохранявшегося файла? Есть варианты?

 

В справке этого нет.

На форумах нашел посты, где говорят, что у такого файла указывается  каталог документов пользователя, путь к которому хранится в переменной MYDOCUMENTSPREFIX. Пустые значения - разумный вариант, возможно самый логичный, но один из.

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

 

5 минут назад, doctorraz сказал:
В 20.05.2021 в 08:46, doctorraz сказал:

Вопрос такой образовался отчего у ни разу не сохранявшегося документа

ThisDrawing.Name= ThisDrawing.FullName

вопрос в этом, как так то?

Ну а это (объектная модель приложения) вообще полностью является собственностью разработчика. ИМХО.

Реализовано у них так.

Они отвечают только за корректную поддержку формата DWG.

А движок, частью которого является объектная модель, может быть абсолютно любым.

 

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

Link to comment
Share on other sites

В 20.05.2021 в 08:46, doctorraz сказал:

Вопрос такой образовался отчего у ни разу не сохранявшегося документа

ThisDrawing.Name= ThisDrawing.FullName

Спойлер

image.png.ec65cac02fed8fd330b13a7b5fee7e92.png

 

Link to comment
Share on other sites

Тут фишка в том, у кого сколько ног, столько и правил :hooligan-no:

 

К тому де, это описание ActiveX, т.е. объектной модели АС.

Очевидно, что у NC объектная модель другая (в смысле, собственная) и полностью копировать аналог нет смысла, а использовать справку к другому продукту - тем более.

 

Для примера.

Все мы изучаем одни и те же ПДД :smajlik-prava:, но ездим, хоть и на одинаковых машинах, но чутка по-разному, в смысле стиля вождения :boyan:. А результат одинаковый - перемещение из А в Б :dance:

Проводя аналогию:

  ПДД, автомобиль, инфраструктура = формализованная компьютерная система (железо+софт);

  каждый водитель со своим стилем вождения = отдельное приложение со своей объектной моделью;         перемещение из А в Б = созданный DWG.

 

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

А вот 2 пункт - менее формализован. Тут разработчик вправе самостоятельно устанавливать правила.

Вот разработчики и резвятся (или ленятся).

Edited by EdwardSt
Link to comment
Share on other sites

В 20.05.2021 в 19:57, Lion007 сказал:

фулнэйм (идеологически) это путь + имя + расширение. пути и расширения до первого сохранения нет (читай - они пустые). а имя есть. вот собственно

ты прав

добавлено через 9 минут
9 минут назад, EdwardSt сказал:

Очевидно, что у NC объектная модель другая

Спойлер

image.thumb.png.5b44fa2e8d981041c6170076859b8e08.png

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Tell a friend

    Love Официальный форум компании Нанософт? Tell a friend!
×
×
  • Create New...