{
"cells": [
{
"cell_type": "markdown",
"id": "be314327",
"metadata": {},
"source": [
"# Zones, zone, vector, vertex, What is it ?"
]
},
{
"cell_type": "markdown",
"id": "a9ce5f02",
"metadata": {},
"source": [
"## Basics\n",
"\n",
"In addition to the matrix information `WolfArray`, it is necessary to have a way to work with vector data. This is the purpose of the classes `Zones`, `zone`, `vector`, and `wolfvertex`.\n",
"\n",
"It is the combination of these classes that provides a coherent set, even though the classes can be used individually in specific scripts.\n",
"\n",
"The most fundamental information is `wolfvertex`, which contains 2D or 3D coordinates in the attributes `x`, `y`, and `z`.\n",
"\n",
"`wolfvertex` instances are then assembled to form line segments and, by extension, polylines and polygons. \n",
"Unlike the Fortran code, which has a segment class, in Python, vertices are stored in the `myvertices` attribute of the `vector` class.\n",
"\n",
"To create a polygon, it is **not mandatory** to have a duplicated vertex. \n",
"The `closed` attribute indicates whether the vector should be considered closed or not. \n",
"If the last vertex is not identical to the first, the vector will behave like a polyline.\n",
"\n",
"A `zone` is a class used to organize multiple vectors. These are stored in the `myvectors` attribute.\n",
"\n",
"A `Zones` is a class used to organize multiple instances of `zone`, in the `myzones` attribute.\n",
"\n",
"Unlike a shapefile, the storage mode proposed here does not force the use of only one type of data. It is therefore possible to combine polylines and polygons in the same object.\n",
"\n",
"## Formats\n",
"\n",
"The default writing format is `.vec`, which is a text file containing only the X and Y coordinates.\n",
"\n",
"It is also possible to write a `.vecz` file that includes the Z coordinate.\n",
"\n",
"The `.vec` and `.vecz` formats are compatible with the Fortran code and the historical WOLF interface written in VisualBasic6. \n",
"In Python, it is also possible to write the information in JSON format.\n",
"\n",
"An import/export filter for the `.shp`, `.gpkg`, and `.gdb` formats is provided through `Geopandas `_.\n",
"\n",
"An import filter for `.dxf` is also available thanks to the `ezdxf `_ package.\n",
"\n",
"## Interaction with Shapely\n",
"\n",
"Shapely _ is a powerful and widely used 2D geometry library (GEOS, PostGIS...).\n",
"\n",
"It is used internally by the vector class for certain operations. For example, it is possible to obtain a LineString via .linestring or a Polygon via .polygon.\n",
"\n",
"For efficiency reasons, Wolf routines can `prepare `_ Shapely geometries to take advantage of the associated computational acceleration."
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "3c1878b7",
"metadata": {},
"outputs": [],
"source": [
"from wolfhece.PyVertexvectors import Zones, zone, vector, wolfvertex"
]
},
{
"cell_type": "markdown",
"id": "029f6ab8",
"metadata": {},
"source": [
"## Create a wolfvertex"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "4e41f52d",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-99999.0\n"
]
}
],
"source": [
"pt1 = wolfvertex(10., 20.) # Z coordinate is not mandatory\n",
"pt2 = wolfvertex(30., 40.)\n",
"\n",
"print(pt1.z) # Z coordinate is -99999. by default"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "c0884fd9",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['addvalue', 'as_shapelypoint', 'copy', 'dist2D', 'dist3D', 'getcoords', 'getvalue', 'in_use', 'is_like', 'limit2bounds', 'rotate', 'values', 'x', 'y', 'z']\n"
]
}
],
"source": [
"# List all attributes/routines of the class wolfvertex - remove the __ methods and the _ methods\n",
"print([attr for attr in dir(pt1) if not attr.startswith('__') and not attr.startswith('_')])"
]
},
{
"cell_type": "markdown",
"id": "af02295f",
"metadata": {},
"source": [
"A `wolfvertex` can store associated values in addition to its coordinates.\n",
"\n",
"To achieve this, you can use the `addvalue` and `getvalue` methods."
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "129b4eda",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1.0\n",
"for the test\n"
]
}
],
"source": [
"pt1.addvalue('added_value', 1.)\n",
"pt1.addvalue('string', 'for the test')\n",
"\n",
"print(pt1.getvalue('added_value')) # 1.0\n",
"print(pt1.getvalue('string')) # for the test"
]
},
{
"cell_type": "markdown",
"id": "011830b3",
"metadata": {},
"source": [
"We can retrieve a numpy vector with coordinates by `getcoords`."
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "245093ad",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([ 1.0000e+01, 2.0000e+01, -9.9999e+04])"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pt1.getcoords()"
]
},
{
"cell_type": "markdown",
"id": "92507ac8",
"metadata": {},
"source": [
"We can test 2 wolfvertex by `is_like` (test only x,y,z)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "a131900a",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"False\n",
"True\n"
]
}
],
"source": [
"print(pt2.is_like(pt1)) # True if the two vertices are in the same zone\n",
"\n",
"pt3 = pt1.copy() # Copy the vertex\n",
"print(pt3.is_like(pt1)) # True if the two vertices are in the same zone"
]
},
{
"cell_type": "markdown",
"id": "51c5d76f",
"metadata": {},
"source": [
"## Create a vector\n",
"\n",
"A vector is a list of `wolfvertex` instances..."
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "f9fc7280",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"test\n",
"100\n",
"-99999.0 -99999.0\n",
"-99999.0 -99999.0\n",
"0.0 10.0\n",
"-0.9993845576124357 0.9996923408861117\n"
]
}
],
"source": [
"import numpy as np\n",
"\n",
"x = np.linspace(0, 10, 100)\n",
"y = np.sin(x)\n",
"\n",
"vert = [wolfvertex(x[i], y[i]) for i in range(len(x))]\n",
"\n",
"vect = vector(name = 'test')\n",
"vect.add_vertex(vert)\n",
"\n",
"print(vect)\n",
"print(vect.nbvertices) # 100\n",
"\n",
"print(vect.xmin, vect.xmax) # -99999.0 -99999.0\n",
"print(vect.ymin, vect.ymax) # -99999.0 -99999.0\n",
"\n",
"# By default, the vector does not set the min/max values of the vertices. We need to set them manually.\n",
"# This is done by the find_minmax() method.\n",
"vect.find_minmax()\n",
"print(vect.xmin, vect.xmax) # 0.0 10.0\n",
"print(vect.ymin, vect.ymax) # -0.9993845576124357 0.9996923408861117"
]
},
{
"cell_type": "markdown",
"id": "19a6c2ac",
"metadata": {},
"source": [
"## Plot a vector\n",
"\n",
"We can plot a vector in a Matplotlib Axis."
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "35d83876",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"\n",
"fig, ax = plt.subplots()\n",
"vect.plot_matplotlib(ax)"
]
},
{
"cell_type": "markdown",
"id": "08f7646e",
"metadata": {},
"source": [
"## Create a zone\n",
"\n",
"A zone is a list of `vector` instances"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "ff68b02c",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0.0 10.0\n",
"-0.9999471661761239 1.0\n",
"0.0 10.0\n",
"-0.9999471661761239 1.0\n"
]
}
],
"source": [
"x = np.linspace(0, 10, 100)\n",
"y = np.cos(x)\n",
"\n",
"# We can also create a vector from a numpy array.\n",
"# The array must be 2D with the first column being the x coordinates and the second column being the y coordinates. shape (n, 2) or (n, 3) if z is present.\n",
"# We can also use the add_vertices_from_array() method to add vertices from a numpy array.\n",
"vect2 = vector(name = 'test2', fromnumpy=np.vstack((x, y)).T) # Create a vector from a numpy array\n",
"vect2.find_minmax()\n",
"\n",
"print(vect2.xmin, vect2.xmax) # 0.0 10.0\n",
"print(vect2.ymin, vect2.ymax) # -0.9999471661761239 1.0\n",
"\n",
"z1 = zone(name = 'zone1') # Create a zone from the vector\n",
"z1.add_vector(vect, forceparent=True) # Add the vector to the zone\n",
"z1.add_vector(vect2, forceparent=True) # Add the vector to the zone\n",
"\n",
"# The forceparent argument is used to force the zone to be the parent of the vector.\n",
"# So, if a vector want to use the zone instance, it can do it with its `parentzone` attribute.\n",
"\n",
"assert vect.parentzone == z1 # The vector is in the zone\n",
"assert vect2.parentzone == z1 # The vector is in the zone\n",
"\n",
"# Regarding the extent of the zone, we can set it manually or let the zone calculate it from the vectors.\n",
"z1.find_minmax() # Calculate the min/max values of the zone from the vectors\n",
"print(z1.xmin, z1.xmax) # 0.0 10.0\n",
"print(z1.ymin, z1.ymax) # -0.9999471661761239 1.0\n"
]
},
{
"cell_type": "markdown",
"id": "4f6ac0c2",
"metadata": {},
"source": [
"## Plot a zone"
]
},
{
"cell_type": "code",
"execution_count": 22,
"id": "44cdb782",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, ax = plt.subplots()\n",
"z1.plot_matplotlib(ax) # Plot the zone with the vectors"
]
},
{
"cell_type": "markdown",
"id": "41befef2",
"metadata": {},
"source": [
"## Create a Zones\n",
"\n",
"A `Zones` instance is a list of `zone` instances"
]
},
{
"cell_type": "code",
"execution_count": 23,
"id": "4cca5579",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0.0 12.0\n",
"-0.9999471661761239 1.9996923408861118\n"
]
}
],
"source": [
"z2 = zone(name = 'zone2') # Create a zone from the vector\n",
"\n",
"vect3 = vect.move(2., 1., inplace=False) # Move a copy of the vector to a new position\n",
"vect4 = vect2.move(0.5, 0.5, inplace=False) # Move a copy of the vector to a new position\n",
"\n",
"z2.add_vector(vect3, forceparent=True) # Add the vector to the zone\n",
"z2.add_vector(vect4, forceparent=True) # Add the vector to the zone\n",
"z2.find_minmax() # Calculate the min/max values of the zone from the vectors\n",
"\n",
"zones = Zones()\n",
"zones.add_zone(z1, forceparent=True) # Add the zone to the list of zones\n",
"zones.add_zone(z2, forceparent=True) # Add the zone to the list of zones\n",
"zones.find_minmax() # Calculate the min/max values of the zones from the vectors\n",
"\n",
"print(zones.xmin, zones.xmax) # 0.0 10.0\n",
"print(zones.ymin, zones.ymax) # -0.9999471661761239 1.0"
]
},
{
"cell_type": "markdown",
"id": "eed3dbd4",
"metadata": {},
"source": [
"## Plot a Zones"
]
},
{
"cell_type": "code",
"execution_count": 25,
"id": "3f293896",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, ax = plt.subplots()\n",
"zones.plot_matplotlib(ax) # Plot the zone with the vectors\n",
"plt.show() # Show the plot"
]
},
{
"cell_type": "markdown",
"id": "ede46de3",
"metadata": {},
"source": [
"## Save a Zones to file"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "90eb1c67",
"metadata": {},
"outputs": [],
"source": [
"# zones.saveas('test.vec') # Save the zones in a .vec file\n",
"# zones.saveas('test.vecz') # Save the zones in a .vecz file (Z values included)\n",
"# zones.saveas('test.shp') # Save the zones in a .shp file (Shapefile format)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python310new",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.11"
}
},
"nbformat": 4,
"nbformat_minor": 5
}