USEPA / SWMM-EPANET_User_Interface

User interface for the Stormwater-Management-Model
113 stars 67 forks source link

The current setup installs both qt5 and qt4 and program fails in using qt4 libraries #263

Closed ehsanMa86 closed 6 years ago

ehsanMa86 commented 6 years ago

The current setup installs both qt5 and qt4 and program fails in using qt4 libraries

Version: EPANET MTP4r2 (master branch) Priority: Medium

Yust11135 commented 6 years ago

@ehsanMa86 Thank you for raising this issue. Can you advise how to solve this problem? I made Issue #249 'The instruction "Getting Started as a Developer" has become outdated'. I can't figure out which libraries need to install.

ehsanMa86 commented 6 years ago

@Yust11135 thanks for pointing out this issue.

I am seeing much complain about the GUI on the github account and since I've looked into this code for a while I don't understand much of this complain. It is just a question of fixing minor programming mistakes to make it it functional. If each program was perfect the first day it was out, then we didn't have updates for the Windows that is being installed on our machines on a daily basis.

My main question at this point is that may I ask what do you want to do with GUI? because I might be able to help you with better way to move on your path rather than staying and waiting to install a developer version of the code. I haven't see the community talking much about modifying the API (main core EPANET libraries). The idea with GUI is kind of the same. It gives the user the flexibility on the run-time manner not letting the user to touch every piece of code.

On the other side, there are two way around to fix the developers installation. Either we have to modify the headers and make it compatible with Python3 and Qt5 or keep the code untouched and package the libraries required by the current version. Each one has their own advantages and disadvantages.

Best regards, Ehsan

Yust11135 commented 6 years ago

Dear @ehsanMa86,

Thank you for sharing your support and understanding of the situation. For the time being, I have some experience with calculating hydraulic system (irrigation systems, knowledge based on EPANET 2.0).

Answering your question I want to make an application based on new SWMM-EPANET_User_Interface with additional modules which can help me doing my daily routine quicker.

Next month, I am starting the semiannual Python courses, and I am going to learn Python from the basics. I hope I will be able to run GUI SWMM-EPANET_User_Interface before classes begin. So far I want to refer to the SWMM-EPANET_User_Interface source code as the example to study Python as often as possible.

That's why I need assistance to run SWMM-EPANET_User_Interface.

Best regards, Yuriy

ehsanMa86 commented 6 years ago

@Yust11135 Okay, glad to hear that. So what you are looking for is to use the engine beside the functionalities of the GUI to make your own application. This IMHO doesn't require installation of the GUI on developers mode. You require to write a User-Define (UD) solver for your case and it is possible to do it using the plugin folder located inside the folder once the GUI is being installed using the executable files available on the repository. The simple way is to read the data from file in case of inquiry from those plugins and not touching the UI. If you are more specific to what you are planning to do, I would be glad to help.

It is just my personal interest that I have inherited from my former advisor during my PhD studies: use the available code smartly, which means the minimum modifications. I recommend to sit down and design the structure of what you want to do.

Best regards, Ehsan

Yust11135 commented 6 years ago

@ehsanMa86 thank you for sharing your support.

Could you advise me a step-by-step instruction how I can make my solver? Or maybe you can advise me documentation. It will help me a lot if you show me the way how to do it. When I start studying in the courses, I hope it will be easier for me.

For more understanding I can share a standard issue of my daily routine: Initial data: -area (ha) -elevation marks (m)

It is necessary to calculate: -number of center pivots (must be selected from the standard range and irrigate the maximum area) Also, the center pivot can operate with a restrictions on movement (number five in the picture) -hydraulic network (hydraulic resistance of pipelines, standard calculation)

irrigation sistem

Thanks in advance.

michaeltryby commented 6 years ago

@Yust11135 and @ehsanMa86 It's great that you two have connected with each other! That's what an Open Source programming community is all about.

I would, however, like to keep the conversation in this thread relevant to the Issue topic. Does that make sense? Therefore, I kindly request that you continue your conversation using another mode of communication. Thanks, I appreciate it.

ehsanMa86 commented 6 years ago

@michaeltryby I totally agree with you and I appreciate for pointing this out. Is there any forum related to EPA that we can keep these conversations open source and accessible?

Yust11135 commented 6 years ago

@ehsanMa86 I duplicated this Issue to my repository. I will be very grateful if you will be able to help me. @michaeltryby you are absolutly right. My daily task is not related to the Issue topic. Sorry for that, I start to learn GitHub and still do not understand how to ask a question personally. Thanks for your helping, thank you for your understanding.

TongZhai commented 6 years ago

@ehsanMa86 we have recently created a new branch 'dev-ui-py3qt5' that contains the code base that is migrated to python 3 and pyqt5 and qgis 3. The instruction for setup your dev environment is also in the Wiki page: Getting Started as a Developer in Python 3. The new development stack is easier to setup based on our experience.