2015-10-14 3 views
0

У меня есть следующий SWIG-файл, загруженный с этого сайта, который предоставляет код C++ для расчета полигонов видимости. Я хочу, чтобы это можно было назвать из Python. Обратите внимание, что название пакета написано странно как «visilibity», а не «видимость».Как избавиться от ошибки в этом файле SWIG

Я на Ubuntu 14.04 с помощью Swig 2.0 и с помощью Python 2.7

Я попытался с помощью команды swig -python visilibity.i на файл SWIG ниже и получил ошибку в Баш строке.

/usr/share/swig2.0/python/std_common.i:73: Error: Syntax error in input(1).

Я невежественный, что здесь не так. Я убедился, что файлы заголовков и .cpp-файлы находятся в том же каталоге, что и .i-файл.

%module visilibity 
%{ 
#include "visilibity.hpp" 
%} 

%include std_vector.i 
namespace std { 
     %template(pointList) vector<VisiLibity::Point>; 
     %template(polygonList) vector<VisiLibity::Polygon>; 
} 


%include visilibity.hpp 


%extend VisiLibity::Polygon { 
    Point __getitem__(unsigned i) { 
    return (*self)[i]; 
    } 
}; 

ответ

4

Это код C++, так что вы должны сказать, что это глоток:

swig -c++ -python visilibity.i 
+0

Спасибо! Это сработало! – smilingbuddha

Смежные вопросы