This commit is contained in:
张壹 2025-07-16 14:06:31 +08:00
parent 31bcd2d2bf
commit 4e7f5eeb7a
92 changed files with 155 additions and 133 deletions

View File

@ -68,7 +68,30 @@ macro(add_example ex_dir name lib1 lib2 lib3 lib4)
endmacro()
if(GCTL_FOUND)
add_example(core array_ex ON OFF OFF OFF)
add_example(core autodiff_ex ON OFF OFF OFF)
add_example(core ceemdan_ex ON OFF OFF OFF)
add_example(core cliplot_ex ON OFF OFF OFF)
add_example(core dsv_io_ex ON OFF OFF OFF)
add_example(core eemd_ex ON OFF OFF OFF)
add_example(core fft_ex ON OFF OFF OFF)
add_example(core fft_filter_ex ON OFF OFF OFF)
add_example(core fft2d_ex ON OFF OFF OFF)
add_example(core fir_filter_ex ON OFF OFF OFF)
add_example(core getoption_ex ON OFF OFF OFF)
add_example(core gmt_ex ON OFF OFF OFF)
add_example(core gnuplot_ex ON OFF OFF OFF)
add_example(core kde_ex ON OFF OFF OFF)
add_example(core legendre_ex ON OFF OFF OFF)
add_example(core multinary_ex ON OFF OFF OFF)
add_example(core ply_io_ex ON OFF OFF OFF)
add_example(core process_ex ON OFF OFF OFF)
add_example(core refellipsoid_ex ON OFF OFF OFF)
add_example(core sparray_ex ON OFF OFF OFF)
add_example(core sparray2d_ex ON OFF OFF OFF)
add_example(core spmat_ex ON OFF OFF OFF)
add_example(core stl_io_ex ON OFF OFF OFF)
add_example(core windowfunc_ex ON OFF OFF OFF)
endif()
#if(GCTL_FOUND AND GCTL_MESH_FOUND)

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/dnn.h"
#include "gctl/dnn.h"
using namespace gctl;
void data_generator(const matrix<double> &train_obs, matrix<double> &train_tar)

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/dnn.h"
#include "gctl/dnn.h"
using namespace gctl;
int main(int argc, char const *argv[]) try

View File

@ -26,7 +26,7 @@
******************************************************/
#include "../data/MNIST/mnist_database.h"
#include "../lib/dnn.h"
#include "gctl/dnn.h"
using namespace gctl;

View File

@ -26,7 +26,7 @@
******************************************************/
#include "../data/MNIST/mnist_database.h"
#include "../lib/dnn.h"
#include "gctl/dnn.h"
using namespace gctl;

View File

@ -26,7 +26,7 @@
******************************************************/
#include "../data/MNIST/mnist_database.h"
#include "../lib/dnn.h"
#include "gctl/dnn.h"
using namespace gctl;

View File

@ -25,8 +25,8 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core.h"
#include "../lib/io.h"
#include "gctl/core.h"
#include "gctl/io.h"
using namespace gctl;

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/algorithm.h"
#include "gctl/math.h"
using namespace gctl;

View File

@ -43,9 +43,9 @@
* along with libeemd. If not, see <http://www.gnu.org/licenses/>.
*/
#include "../lib/core.h"
#include "../lib/io.h"
#include "../lib/algorithm.h"
#include "gctl/core.h"
#include "gctl/io.h"
#include "gctl/math.h"
using namespace gctl;

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/graphic/cliplot.h"
#include "gctl/graphic/cliplot.h"
int main(int argc, char *argv[])
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/io.h"
#include "gctl/io.h"
using namespace gctl;
@ -35,7 +35,7 @@ int main(int argc, char const *argv[]) try
dsv_io tc;
tc.delimeter('|');
tc.head_number(1);
tc.load_text("tmp/world_data", ".txt", ColHead|RowHead);
tc.load_text("data/world_data", ".txt", ColHead|RowHead);
tc.info(AttInfo|HeadInfo|TagInfo);
tc.filter("America", "Continent_s", ColHead);

View File

@ -43,9 +43,9 @@
* along with libeemd. If not, see <http://www.gnu.org/licenses/>.
*/
#include "../lib/core.h"
#include "../lib/io.h"
#include "../lib/algorithms.h"
#include "gctl/core.h"
#include "gctl/io.h"
#include "gctl/math.h"
using namespace gctl;

View File

@ -25,9 +25,9 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core.h"
#include "../lib/io.h"
#include "../lib/algorithm.h"
#include "gctl/core.h"
#include "gctl/io.h"
#include "gctl/math.h"
using namespace gctl;
@ -64,7 +64,7 @@ void average_radian_spec(const array<double> &in_freq, const array<double> &in_p
if (!bin.empty())
{
bin_arr.import_vector(bin);
bin_arr.input(bin);
out_power[i] = bin_arr.mean();
out_std[i] = bin_arr.std();
}

View File

@ -25,9 +25,9 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core.h"
#include "../lib/io.h"
#include "../lib/algorithm.h"
#include "gctl/core.h"
#include "gctl/io.h"
#include "gctl/math.h"
using namespace gctl;

View File

@ -25,9 +25,9 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core.h"
#include "../lib/io.h"
#include "../lib/algorithm.h"
#include "gctl/core.h"
#include "gctl/io.h"
#include "gctl/math.h"
using namespace gctl;

View File

@ -25,9 +25,9 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core.h"
#include "../lib/io.h"
#include "../lib/algorithm.h"
#include "gctl/core.h"
#include "gctl/io.h"
#include "gctl/math.h"
using namespace gctl;

View File

@ -25,8 +25,8 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/utility.h"
#include "../lib/geometry.h"
#include "gctl/utility.h"
#include "gctl/poly.h"
using namespace gctl;

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/graphic/gmt.h"
#include "gctl/graphic/gmt.h"
int main(int argc, char *argv[])
{

View File

@ -25,8 +25,8 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core/macro.h"
#include "../lib/graphic/gnuplot.h"
#include "gctl/core/macro.h"
#include "gctl/graphic/gnuplot.h"
int main(int argc, char *argv[])
{

View File

@ -25,8 +25,8 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core.h"
#include "../lib/algorithm.h"
#include "gctl/core.h"
#include "gctl/math.h"
using namespace gctl;

View File

@ -25,8 +25,8 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/io.h"
#include "../lib/algebra.h"
#include "gctl/io.h"
#include "gctl/math.h"
using namespace gctl;

View File

@ -25,8 +25,8 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/geometry.h"
#include "../lib/algorithm.h"
#include "gctl/poly.h"
#include "gctl/math.h"
using namespace gctl;
@ -39,8 +39,7 @@ int main(int argc, char const *argv[]) try
//array<double> xs = {-2.2, -1.8, -1.5, -1.0, -0.7, -0.2, 0.9, 1.3, 1.9, 2.5};
//ml.init(xs, std);
array<double> x(201);
sequence(x, 0.1, 0.001);
array<double> x(201, 0.1, 0.001);
for (size_t i = 0; i < x.size(); i++)
{

View File

@ -25,8 +25,8 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core.h"
#include "../lib/io.h"
#include "gctl/core.h"
#include "gctl/io.h"
using namespace gctl;

View File

@ -25,8 +25,8 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core.h"
#include "../lib/utility.h"
#include "gctl/core.h"
#include "gctl/utility.h"
using namespace gctl;

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/geometry.h"
#include "gctl/math.h"
using namespace gctl;
@ -60,7 +60,7 @@ int main(int argc, char const *argv[]) try
std::cout << "Geocentric: " << ps << std::endl;
// 转换为大地坐标
point3ds pd;
ellip.xyz2geodetic(ps.s2c(), pd.lon, pd.lat, pd.rad);
ellip.xyz2geodetic(s2c(ps), pd.lon, pd.lat, pd.rad);
std::cout << "Geodetic: " << pd << std::endl;
// 400km高
pd.rad = 400000.0;

View File

@ -25,8 +25,8 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core.h"
#include "../lib/algorithms.h"
#include "gctl/core.h"
#include "gctl/math.h"
int main(int argc, char const *argv[])
{

View File

@ -25,8 +25,8 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core.h"
#include "../lib/io.h"
#include "gctl/core.h"
#include "gctl/io.h"
using namespace gctl;

View File

@ -25,9 +25,9 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/core.h"
#include "../lib/algorithm.h"
#include "../lib/io.h"
#include "gctl/core.h"
#include "gctl/math.h"
#include "gctl/io.h"
using namespace gctl;

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh.h"
#include "gctl/mesh.h"
int main(int argc, char *argv[])
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh.h"
#include "gctl/mesh.h"
int main(int argc, char *argv[])
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh.h"
#include "gctl/mesh.h"
int main(int argc, char *argv[])
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh.h"
#include "gctl/mesh.h"
int main(int argc, char *argv[]) try
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh.h"
#include "gctl/mesh.h"
int main(int argc, char *argv[]) try
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh.h"
#include "gctl/mesh.h"
int main(int argc, char *argv[]) try
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh.h"
#include "gctl/mesh.h"
int main(int argc, char *argv[]) try
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh.h"
#include "gctl/mesh.h"
int main(int argc, char *argv[]) try
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh.h"
#include "gctl/mesh.h"
int main(int argc, char *argv[]) try
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh.h"
#include "gctl/mesh.h"
int main(int argc, char *argv[]) try
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh/mesh_io.h"
#include "gctl/mesh/mesh_io.h"
using namespace gctl;

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/mesh/tri2d_mesh.h"
#include "gctl/mesh/tri2d_mesh.h"
using namespace gctl;

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/optimization.h"
#include "gctl/optimization.h"
#include "gctl/math/gaussfunc.h"
using namespace gctl;

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/optimization/lcg.h"
#include "gctl/optimization/lcg.h"
#include "gctl/graphic/gnuplot.h"
#define M 1000

View File

@ -27,9 +27,9 @@
#include <iostream>
#include <iomanip>
#include "../lib/optimization.h"
#include "gctl/optimization.h"
#include "gctl/core.h"
#include "gctl/algorithms.h"
#include "gctl/math.h"
using std::cout;
using std::endl;

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/optimization.h"
#include "gctl/optimization.h"
#define M 90
#define N 100

View File

@ -1,4 +1,4 @@
#include "../lib/optimization.h"
#include "gctl/optimization.h"
class TEST_FUNC : public gctl::lbfgs_solver
{

View File

@ -27,9 +27,9 @@
#include <iostream>
#include <iomanip>
#include "../lib/optimization.h"
#include "gctl/optimization.h"
#include "gctl/core.h"
#include "gctl/algorithms.h"
#include "gctl/math.h"
using std::cout;
using std::endl;

View File

@ -25,9 +25,9 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/optimization.h"
#include "gctl/optimization.h"
#include "gctl/core.h"
#include "gctl/algorithms.h"
#include "gctl/math.h"
int main(int argc, char const *argv[])
{

View File

@ -25,9 +25,9 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/optimization.h"
#include "gctl/optimization.h"
#include "gctl/core.h"
#include "gctl/algorithms.h"
#include "gctl/math.h"
// get random floating points
double random_double(double l, double t)

View File

@ -25,9 +25,9 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/optimization.h"
#include "gctl/optimization.h"
#include "gctl/core.h"
#include "gctl/algorithms.h"
#include "gctl/math.h"
typedef gctl::array<std::complex<double>> cd_array;

View File

@ -25,9 +25,9 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/optimization.h"
#include "gctl/optimization.h"
#include "gctl/core.h"
#include "gctl/algorithms.h"
#include "gctl/math.h"
#define M 1000
#define N 900

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/optimization.h"
#include "gctl/optimization.h"
using namespace gctl;

View File

@ -27,7 +27,7 @@
#include "gctl/core.h"
#include "gctl/io.h"
#include "../lib/potential.h"
#include "gctl/potential.h"
// 多线程异步头文件
#include <thread>
#include <future>

View File

@ -27,7 +27,7 @@
#include "gctl/core.h"
#include "gctl/io.h"
#include "../lib/potential.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -26,9 +26,9 @@
******************************************************/
#include "toml.hpp"
#include "../lib/potential.h"
#include "gctl/potential.h"
#include "gctl/core.h"
#include "gctl/geometry.h"
#include "gctl/poly.h"
#include "gctl/io.h"
using namespace gctl;

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/potential.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/potential.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -26,8 +26,8 @@
******************************************************/
#include "gctl/io.h"
#include "gctl/geometry.h"
#include "../lib/potential.h"
#include "gctl/poly.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -27,7 +27,7 @@
#include "gctl/core.h"
#include "gctl/io.h"
#include "../lib/potential.h"
#include "gctl/potential.h"
#include "iostream"
int main(int argc, char const *argv[]) try

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/io.h"
#include "../lib/potential.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/io.h"
#include "../lib/potential.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/io.h"
#include "../lib/potential.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -26,8 +26,8 @@
******************************************************/
#include "gctl/io.h"
#include "gctl/geometry.h"
#include "../lib/potential.h"
#include "gctl/poly.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -26,8 +26,8 @@
******************************************************/
#include "gctl/io.h"
#include "gctl/geometry.h"
#include "../lib/potential.h"
#include "gctl/poly.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -26,8 +26,8 @@
******************************************************/
#include "gctl/io.h"
#include "gctl/geometry.h"
#include "../lib/potential.h"
#include "gctl/poly.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -26,8 +26,8 @@
******************************************************/
#include "gctl/io.h"
#include "gctl/geometry.h"
#include "../lib/potential.h"
#include "gctl/poly.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -27,7 +27,7 @@
#include "gctl/core.h"
#include "gctl/io.h"
#include "../lib/potential.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -26,7 +26,7 @@
******************************************************/
#include "iomanip"
#include "../lib/potential.h"
#include "gctl/potential.h"
using namespace gctl;

View File

@ -17,7 +17,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/seismic.h"
#include "gctl/seismic.h"
int main(int argc, char *argv[])
{

View File

@ -17,7 +17,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/seismic.h"
#include "gctl/seismic.h"
int main(int argc, char *argv[])
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/seismic.h"
#include "gctl/seismic.h"
int main(int argc, char const *argv[]) try
{

View File

@ -17,7 +17,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "../lib/seismic.h"
#include "gctl/seismic.h"
int before_processing(gctl::SIG_UNIT &sig)
{

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
#include "gctl/io.h"
int main(int argc, char const *argv[])

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/geometry.h"
#include "gctl/poly.h"
#include "gctl/io.h"
using namespace gctl;

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/geometry.h"
#include "gctl/poly.h"
#include "gctl/io.h"
using namespace gctl;

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
#include "gctl/io.h"
int main(int argc, char const *argv[])

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
#include "gctl/io.h"
int main(int argc, char const *argv[])

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
int main(int argc, char const *argv[])
{

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
int main(int argc, char const *argv[])
{

View File

@ -25,7 +25,7 @@
* Also add information on how to contact you by electronic and paper mail.
******************************************************/
#include "gctl/geometry.h"
#include "gctl/poly.h"
using namespace gctl;

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
#include "iostream"
int main(int argc, char const *argv[])

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
#include "gctl/io.h"
#include "iostream"

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
#include "gctl/utility.h"
int main(int argc, char const *argv[])

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/geometry.h"
#include "gctl/poly.h"
int main(int argc, char const *argv[])
{

View File

@ -26,8 +26,8 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/geometry.h"
#include "gctl/math.h"
#include "gctl/poly.h"
#include "gctl/utility.h"
#include "iostream"

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
#include "iostream"
int main(int argc, char const *argv[])

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/geometry.h"
#include "gctl/poly.h"
#include "iostream"
int main(int argc, char const *argv[])

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/geometry.h"
#include "gctl/poly.h"
#include "iostream"
using namespace gctl;

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
int main(int argc, char const *argv[])
{

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
#include "lcg/lcg.h"
#include "ctime"

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/algorithm.h"
#include "gctl/math.h"
#include "gctl/optimization.h"
#include "iostream"
#include "iomanip"

View File

@ -26,7 +26,7 @@
******************************************************/
#include "gctl/core.h"
#include "gctl/geometry.h"
#include "gctl/poly.h"
namespace {
// show elements

View File

@ -27,7 +27,7 @@
#include "gctl/core.h"
#include "gctl/io.h"
#include "gctl/geometry.h"
#include "gctl/poly.h"
using namespace gctl;