crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Задать имя объекта не имея SetObjectName
JuryS1806
  опции профиля:
сообщение 26.12.2009, 23:52
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 93
Регистрация: 21.10.2009
Из: Нижний Новгород
Пользователь №: 1168

Спасибо сказали: 9 раз(а)




Репутация:   0  


Удачного времени суток!
Хочу в порядке бреда задать вопрос.

Имею :
void createpoint::mpoint(const int myX , const int myY , const int myZ)
{
    gp_Pnt Point(myX,myY,myZ);
    Handle(AIS_Point) myName = new AIS_Point(new Geom_CartesianPoint(Point));
    getContext()->SetColor(myName,Quantity_NOC_BLACK,Standard_False);
    getContext()->Display(myName,1);
}


Так вот, задача в том, чтобы задать имя объекта не myName, а например значение QString.
Пробовал таким способом:

QString str = "NameOfObject";
char* ss = str.toAscii().data();

Далее пробую Handle(AIS_Point) ss = new AIS_Point(new Geom_CartesianPoint(Point));
Не дает имя задать.

Вообщем всю голову сломал. Прошу помочь.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 27.12.2009, 22:21
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(JuryS1806 @ 28.12.2009, 1:17) *
AIS_Point* ss = new AIS_Point(new Geom_CartesianPoint(Point));

Это тоже самое как мы создаем QAction:

QAction* <имя> = new QAction (...)
Ни чё не понимаю, если это тоже самое т.е. AIS_Point является наследником QObject, то и пиши ss->setObjectName("ююю").
В чём проблема.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
JuryS1806
  опции профиля:
сообщение 27.12.2009, 22:33
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 93
Регистрация: 21.10.2009
Из: Нижний Новгород
Пользователь №: 1168

Спасибо сказали: 9 раз(а)




Репутация:   0  


Вот и я думал так сделать ! Уже написал программу, все интерактивные режимы и операции ! Блин, а теперь выяснил, что не могу графическим объектам задать атрибуты, да черт с ними, хотя бы имя объекта, атрибуты можно и отдельно хранить.

нет там никаких SetObjectName.
есть TDF_Label, TDF_Attributes... но под QT оно не работает. Все время бьет ошибку undefined reference error, хотя под MS Visual собирается нормально.

Блин я в тупике. Я могу обратиться к этим объектам, могу их удалять, складывать , вычитать... Могу вывести их в список, !но имя присваивается им при создании и ВСЕ ТУТ ! хоть тресни !

AIS_Point* Point1 = new AIS_Point(new Geom_CartesianPoint(Point));

значит создасться точка с именем Point1 а при следующем добавлении точки это имя затирается. Хотя точка остается и также можно с ней работать.

ОДНИМ СЛОВОМ, ДУРДОМ !
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


5 чел. читают эту тему (гостей: 5, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.12.2024, 3:20