Pre-release of EPANET 2.2

Github repo traffic

Get traffic of your repository.
GitHub provides traffic data for the last 14 days.
This code can be used to run one time of day or every 14 days to collect the traffic.

Python requirements (GithubAPI):
pip install githubpy

run the python file
But First set this variables based on your repo:
repo = ‘ImportPhotos’
org = ‘KIOS-Research’
token = ‘%token%’

Python code:

How to get your token:

Then generate token!


#Date, Visitors, Views
2019-07-04T00:00:00Z, 7, 15
2019-07-05T00:00:00Z, 13, 93
2019-07-06T00:00:00Z, 6, 7
2019-07-07T00:00:00Z, 10, 55
2019-07-08T00:00:00Z, 16, 321
2019-07-09T00:00:00Z, 18, 282
2019-07-10T00:00:00Z, 11, 171
2019-07-11T00:00:00Z, 10, 145
2019-07-12T00:00:00Z, 15, 182
2019-07-13T00:00:00Z, 8, 18
2019-07-14T00:00:00Z, 5, 14
2019-07-15T00:00:00Z, 3, 85
2019-07-16T00:00:00Z, 10, 242
2019-07-17T00:00:00Z, 15, 314
2019-07-18T00:00:00Z, 15, 248
2019-07-19T00:00:00Z, 14, 66


Total visitors: 176
Total views: 2258

Other links:

Rotate water network via EPANET-MATLAB-Toolkit

%% Example: Rotate EPANET Inp File
clc; close all; clear all;

% Load network and paths
d = epanet('Net1.inp');

%Plot nework initial
h = d.plot;

% Rotate degrees theta
theta = pi/2; %90 degrees
for theta = 0:pi/20:pi*2
% define the x- and y-data for the original line we would like to rotate
x = d.getNodeCoordinates{1}';
y = d.getNodeCoordinates{2}';

% ****
% create a matrix of these points, which will be useful in future calculations
v = [x;y];
% choose a point which will be the center of rotation
x_center = x(1);
y_center = y(1);
% create a matrix which will be used later in calculations
center = repmat([x_center; y_center], 1, length(x));
% define a 60 degree counter-clockwise rotation matrix
% theta = pi/3; % pi/3 radians = 60 degrees
R = [cos(theta) -sin(theta); sin(theta) cos(theta)];
% do the rotation...
s = v - center; % shift points in the plane so that the center of rotation is at the origin
so = R*s; % apply the rotation about the origin
vo = so + center; % shift again so the origin goes back to the desired center of rotation
% this can be done in one line as:
% vo = R*(v - center) + center
% pick out the vectors of rotated x- and y-data
x_new = vo(1,:);
y_new = vo(2,:);
% ****

for i=1:d.NodeCount
d.setNodeCoordinates(i, [x_new(i) y_new(i)]);

% Plot rotated network
d.plot('axes', h)
% d.saveInputFile('rotated.inp');

%% Source:

Nice QGIS tricks #QGIS

Just type the words in the coordinate section: world, dizzy, contributors, hackfests, retro and bored (When you get bored and want to play a little) (adsbygoogle = window.adsbygoogle || []).push({ google_ad_client: “ca-pub-1299273813983849”, enable_page_level_ads: true });

Make your puzzle country
1. Select your country layer
2. Write “bored” in the coordinates section

ImportPhotos #QGIS


How to cite

M. Kyriakou, G. Christou, end P. Kolios, “ImportPhotos: a QGIS plugin to visualise geotagged photos”, Zenodo. (doi:10.5281/zenodo.3384824)

author={Kyriakou, Marios and Christou, Georgios and Kolios, Panayiotis},
title={ImportPhotos: a QGIS plugin to visualise geotagged photos},
year= {2019},
DOI= {10.5281/zenodo.3384824}}

[the_ad id=”2737″]

ImportPhotos v2.2.3

  • Add field column Images to use with QGIS plugin qgis2web directly OK
  • Test with Linux mint.
  • Change the position from the point of the photo.
  • Show next photo based on the timestamp or location

ImportPhotos v2.2.2

  • Add the option to import photos only on canvas extent
  • Add filters gray and mirror, mono
  • Filters edges, averaging, 2D convolution, gaussian, gaussian highpass, median (needed: pip install opencv-python)
  • Add bands red, blue, green
  • Add name title and save as option
  • Fix transparent left, right buttons for all themes (adsbygoogle = window.adsbygoogle || []).push({ google_ad_client: “ca-pub-1299273813983849”, enable_page_level_ads: true });

[the_ad id=”2743″]

ImportPhotos v2.1

Fix tabs & update buttons
Fix zoom to selected photo


ImportPhotos v2.0

[the_ad id=”2743″]

New features:


from qgis.utils import plugins
 if 'ImportPhotos' in plugins:
         plugins['ImportPhotos'].import_photos('C:\\Users\\USERNAME\\Desktop\\20170911', 'C:\\Users\\USERNAME\\Desktop\\example.shp', "C:\\Users\\USERNAME\\Desktop\\newstyle.qml", False)
  #or  #plugins['ImportPhotos'].import_photos('C:\\Users\\USERNAME\\Desktop\\2#0170911', 'C:\\Users\\USERNAME\\Desktop\\example2.shp', "", False)

2. Add group with layer

3. Fix issue in right/left transparent buttons

4. Add fields title, user comment and relative path
5. Change main ui window

[the_ad id=”2737″]

This tool can be used to import Geo-Tagged photos (jpg or jpeg) as points to QGIS. The user is able to select a folder with photos and only the geo-tagged photos will be taken. Then a layer will be created which it will contain the name of the picture, its directory, the date and time taken, altitude, longitude, latitude, azimuth, north, camera maker and model and relative path. The plug-in doesn’t need any third party applications to work. It has two buttons; the one is to import geotagged photos, and the other one is to be able to click on a point and display the photo along with information regarding the date time and altitude. The user can create one of the following file types: GeoJSON, SHP, GPKG, CSV, KML, TAB. When the user saves a project and wants to reopen it, the folder with the pictures should stay at the original file location or moved at the same location of the project (e.g. *.qgz) in order to be able to view the pictures. Mac users please refer to the Read Me file for further guidance.

QGIS 2 & QGIS 3 ( Drop updates for QGIS 2 #v1.6 , v1.7)

Mac Users. Requires the following Python Modules to be installed: UnixImageIO, FreeType, PIL Please visit:


Older versions