У меня есть следующий 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];
}
};
Спасибо! Это сработало! – smilingbuddha