Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.08.2013, 15:20   #1
Ska1006
Новичок
Джуниор
 
Регистрация: 21.08.2013
Сообщений: 4
По умолчанию Пути для #include

Решил создать свой примитив для AutoCAD 2010 при помощи ОbjectArx. Создаю проект при помощи входящего в поставку библиотеки визарда.
Все хэдеры лежат по адресу "C:\ObjectARX 2010\inc\".
Визард включает их в проект вот так:
Код:
#include "arxHeaders.h"
в итоге, при построении получается ошибка:
"fatal error C1083: Не удается открыть файл include: arxHeaders.h: No such file or directory".
В принципе это лечится если дописать путь в #include, но таких мест эдак 200+.
Собственно вопрос: Можно как либо(например в настройках проекта) указать места поиска хэдеров?
Ищу уже часа 3, помогите пожалуйста.
Visual Studio 2008 Prof
Ska1006 вне форума Ответить с цитированием
Старый 21.08.2013, 15:47   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я может затуплю, но по-моему в инклуд можно указать полный путь при желании. Ну или относительный, относительно проекта.
Цитата:
Решил создать свой примитив для AutoCAD 2010
Еще один глупый вопрос: А почему не на Лиспе акада? Или на Дизеле?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 21.08.2013, 16:13   #3
Ska1006
Новичок
Джуниор
 
Регистрация: 21.08.2013
Сообщений: 4
По умолчанию

1)Пути можно указать в инклюдах, но это придётся делать в очень большом количестве мест. При этом на инклюды в ObjectARX-ких хедерах VS тоже ругается. Мне кажется что менять их там не особо правильное решение.

2)Суть задачи - создание редактируемой линии с текстом.
При этом текст должен удалятся, перемещаться, создаваться и т.д. вместе с линией.
Все линии обрабатываются отдельной программой по COM интерфейсу Acad.
Вариант с отдельным текстом (Mtext+ PolyLine + XData) плохо подходит т.к. линий на чертеже будет много и полный перебор будет занимать достаточно большое время.
Вариант с созданием блока с текстовым атрибутом тоже отпадает т.к. линия не будет редактируемой и будет оооочень много блоков в каждом чертеже.
Насколько я знаю единственный вариант решения задачи создания подобного примитива - ObjectARX.
Если вы знаете какие либо другие варианты создания примитивов такого рода - буду рад.

Последний раз редактировалось Ska1006; 21.08.2013 в 16:19.
Ska1006 вне форума Ответить с цитированием
Старый 21.08.2013, 16:19   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
и полный перебор будет занимать достаточно большое время.
А зачем тебе перебор? Что ты хочешь от этих блоков?
Я в свое время так делал выноски - полилинию с МТекстом. Однако сам текст был привязан ссылкой к Property документа. Я тогда циклом обходил только эти Проперти, а не объекты на листе.
Цитата:
Вариант с созданием блока с текстовым атрибутом тоже отпадает
explode еще не отменяли. И по-моему без эксплода можно просто временно открывать блок, после его закрывать.

Задача какая? Что ты от этих объектов получить желаешь?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 21.08.2013, 16:36   #5
Ska1006
Новичок
Джуниор
 
Регистрация: 21.08.2013
Сообщений: 4
По умолчанию

Задача:
Сделать подписи кабелей на полных схемах подстанций(марка,кол-во жил, и т.д.).
Все данные о кабелях будут хранится в БД, а на чертеже нужно отображать только часть инфы.
Линии будут вставляться при помощи инструмента, реализованного в отдельной программе.
Потом по данным из базы можно будет построить кабельные журналы и прочую документацию автоматически.
Вся проблема в количестве объектов:100-200 на чертёж.

Про property не слышал, пошел гуглить.

Explode не катит т.к. пользователю должно быть удобно изменять линию стандартными средствами, а в редакторе блоков не видно остальной чертёж.
Ska1006 вне форума Ответить с цитированием
Старый 21.08.2013, 16:41   #6
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

Цитата:
Сообщение от Ska1006 Посмотреть сообщение
В принципе это лечится если дописать путь в #include, но таких мест эдак 200+.
Собственно вопрос: Можно как либо(например в настройках проекта) указать места поиска хэдеров?
В принципе это можно излечить создав *свой* arxHeaders.h который будет подключать правильный файл указав полный путь.
А еще можно залазить в меню Tools / Options / Projects & Solutions / VC++ Directories и добавить нужную директорию там. В версиях студии до 2010 это глобальная настройка, в 2010+ это уже в каждом проекте отдельно.
waleri вне форума Ответить с цитированием
Старый 21.08.2013, 17:05   #7
Ska1006
Новичок
Джуниор
 
Регистрация: 21.08.2013
Сообщений: 4
По умолчанию

Цитата:
Сообщение от waleri Посмотреть сообщение
А еще можно залазить в меню Tools / Options / Projects & Solutions / VC++ Directories и добавить нужную директорию там. В версиях студии до 2010 это глобальная настройка, в 2010+ это уже в каждом проекте отдельно.
Спасибо! Этот вариант очень даже подошел.
Ska1006 вне форума Ответить с цитированием
Старый 21.08.2013, 17:10   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Все данные о кабелях будут хранится в БД, а на чертеже нужно отображать только часть инфы.
Ага понял. Даже не знаю что тут подсказать.
Цитата:
Про property не слышал, пошел гуглить.
Дайбог вспомню как делал - отпишусь. Просто прошло уж больше 4 лет с того времени, все забывается увы, а проекта с пропертями с собой нет.
Цитата:
Explode не катит
Верю. Уровень удобства может упасть, хотя иногда это вполне приемлемо.
Цитата:
Вся проблема в количестве объектов:100-200 на чертёж.
Эм-м-м... И ожидаешь тормоза? Как-то не верится...

P.S. Вот кое-что вспоминается:

http://www.cad.dp.ua/stats/a2002/a2002_2.php
http://forum.dwg.ru/showthread.php?p=280637&#post280637
http://forum.dwg.ru/showthread.php?p=274426&#post274426

Вот как я делал: Все выноски формировал в блок, а к блоку формировал аттрибуты, и уже с ними работал.
I'm learning to live...

Последний раз редактировалось Stilet; 21.08.2013 в 17:29.
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C# Волновой алгоритм поиска пути в лабиринте. Построение пути Wanz Помощь студентам 1 17.03.2013 14:04
подмена пути для изображений Mortimoro PHP 5 04.05.2011 15:37
Не заносятся пути для всех файлов после FindFirst artemavd Общие вопросы Delphi 8 02.12.2010 10:20
Диалоговое окно для сохранения пути jestya Microsoft Office Excel 2 01.10.2010 23:22
программы для поиска пути в лабиринте. Пролог loshara_de_kontara Помощь студентам 2 19.11.2008 21:46