473,395 Members | 1,653 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

Help to design a database for topography

759 512MB
Hi !

Some generalities about topography
The topographic points are represented in 3 coordinates:
X - to the North
Y - to the Est
Z - altitude

Zero angle is to the North and is increased in the clock wise.

The trigonometric circle has 400 grades (not only 360 like in math).

There are predefined points (the X, Y, Z coordinates are known).
Here is OK: this points can be stored in a table (table PredefPoints).

Based on this points and some measurements (angles & distances) is possible to calculate new points.

And here is where I am in trouble:
1)
Based on this calculated points and other measurements will be calculate other points and so on. I can't know how many intermediate points will be calculate until the last point (the purpose point) will be calculate.
2)
The mathematical method is not the same for each case.

While to implement math is an easy problem, to design the database is a big one because, as I see now, I must store the calculated points in a table in order to refer again in the next iteration.
In order to make things even harder to accomplish after this points are calculated once is very probable to iterate the calculations, making small changes in measurements values, in order to eliminate the measurements errors.
But I need to store at least the original values for measurements (if not the new values and the new values again and again) in order to restart iterations after a human error.

Also is needed to store even the mathematical method used to calculate each point.

More than I need a report to show how each point has been calculated: Base points, measurements, mathematical method =>, New Point.

Some ideas on how to design a database to reach this ?

Thank you !
Mar 6 '12 #1
5 1638
twinnyfo
3,653 Expert Mod 2GB
Mihail,

You mention in point 2) above, that the mathematical method for calculating is not always the same. One key question is how many different methods of calculation are there? Two? Three? Twenty-Four? If there are only a few methods for calculation, I would begin by establishing public functions in a module. The variables required for these calculations could easily be sent from the form on which the data points will reside to calculate new data.

With each set of points, within the table itself, you could have a separate field that identifies with method of calculaiton is required, then, depending on that value, the form would send the data to the public function(s) as required.

I am not sure about all the details of your calculations, but it appears to me that you begin with several points, calculate new ones and then calculate additional ones based on these new points? This sounds almost like a self-replicating database that would quickly become very large, depending on the number of iterations you send the data through.

This might be a start, but I am having problems envisioning exactly how your database will work. That is a weakness on my part right now....

Please let me know if there is additional information you can provide.

Thanks!
twinnyfo
Jul 27 '12 #2
dsatino
393 256MB
I'm not sure I'm following exactly what you want, but the table structure and relationships in the picture should steer you in the right direction. Further explanation is below:

PrimaryPoint
PointID is an autonumber field
The x,y,z coord fields are a unique composite key

Iteration
IterationID is an autonumber field
The Iteration and PointID fields are a unique composite key

CalcPoints
CalcPointID is an autonumber field



This setup assumes that iterations are at the PrimaryPoint level and that each iteration will produce any and all CalcPoints.

You will need to programmitically determine the iteration number for each PrimaryPoint.
Attached Images
File Type: jpg Points.jpg (23.0 KB, 167 views)
Jul 27 '12 #3
Mihail
759 512MB
Thank you, both, for your time and good ideas.

@twinnyfo
There are only few methods of calculating.
So, seems to be Ok to design public functions for that.

Yes. I start with some points (say P0 points) then, based on this points I calculate new points (say P1 points) using different methods.

From here start my real troubles:
-First because for all P1 points is necessary to store the method I use to calculate this points. Ok. I have an idea how to do that.

-Second because at a later time (say tomorrow) I use the old points (Po) as well as the new points (P1) to calculate other new points (P2).
So, at this time, P0 = P0 + P1. This is what I don't know (anyway... I have not a good idea) how to implement.

@dsatino
Thank you too for the answer.
I use iterations in order to calculate, very exact, the new points not for generate this points. I know: my English is not very good.

To explain better:
I am somewhere on the map, in P(Xp=?, Yp=?); I use only 2 coordinates because I can explain more easy.
If I know three "old" points A(Xa,Ya) , B(Xb,Yb) , C(Xc,Yc) and the distances between P and this points PA, PB, and PC then I can calculate Xp and Yp.
But any measurement has errors. So I need to know (at least) one more point D(Xd,Yd) and the distance PD (of course, PD has errors too).

Here is the loop (the iteration)
After I calculate P, I verify the distance from my P to D. Of course this is not equal with PD I measure. So I need to adjust a little bit PA, PB, PC and PD (all of them) then I recalculate P(Xp=?, Yp=?)
And I do this again and again until the error is less than... a value.

After all that I can say that I know the point P.
From now to ever I can use P as well as A, B, C or D to calculate other points. Next time is no need to calculate again P.
But this approach seems to broke the rules of normalization ?!?!?
It is why I am in doubt:
I store or not this points in order to use they next time ?
If i don't store this points (because I can calculate any time) how I can refer one of them when I need ?

And is very possible that in the future someone ask me how I calculate P. So I need to know somehow that I use A,B,C and D as fixed (known) points and PA, PB, PC, PD as measured distances.

Thank you for yours patience with my poor English !
Aug 2 '12 #4
twinnyfo
3,653 Expert Mod 2GB
Mihail,

I think dsatino is on the right track. Every time you calculate a point you save it to the CalcPoints table, but you always know how you got there with the iteration table. Either way, because we are talking about points being recalculated often, I can see the tables getting huge pretty quickly, because it looks like the calculated points may be refined again and again over time?

I would be interested to see the final product....
Aug 2 '12 #5
Mihail
759 512MB
Indeed. In theory. In real life I know (maybe) 200 points then I calculate 100 - 200 new points per a year. It is equal to zero for Access.
I think that is no problem for a database for all my country (or for a much bigger country like USA) and for all employes which determine new points... and have my productivity :).

Thank you again for your help !
Aug 2 '12 #6

Sign in to post your reply or Sign up for a free account.

Similar topics

2
by: cm500 | last post by:
I'm very new to databases so bear with me. What I need is a way to track the training for the employees at my firm. I have 40 classes that I will be teaching on various subjects and various...
3
by: David Holmes | last post by:
I have been developing a commercial Access Application for some four years now, the mde file is over 30Mb without data, I have recently been approached to make some additions, but due to my poor...
1
by: ILCSP | last post by:
Hi,this has been bothering me for a while now. I have 2 MS Access 2000 databases, the real one that everybody uses (in the NT network) and the one I use to design new stuff. After I test the new...
0
by: Marc DVer | last post by:
I am at kind of a loss on how to design a certain database project I am working on. Basically, we have a proprietary program with a standard backend (though we do not have direct write access to...
1
by: bob1barker | last post by:
we are creating a database of sales agents. Basically I have a table of about 35,000 people, a second one with 8000 offices, and a third table of around 400,000 transactions done by those 35,000...
7
by: Dan | last post by:
(Using Classic ASP & MS Access) I have a page that has 120 fields on it (mostly checkboxes). I cannot split this into smaller pages. So what i want to do is write a class that handles this. in...
2
by: Stephen | last post by:
I volunteer for a non-for profit group and they have alot of names in a multiple databases. the problem is that some people are in multiple databases. and if they send out a mailing from multiple...
2
thatos
by: thatos | last post by:
I need to know which fields must I use when designing a database for a filling company or where can I find any information which can help me with this as I have already googled and I doing get...
2
by: nishidipz | last post by:
Hi all, i am going to design a hairdresser's appointment system and i need help! its a DB and will contain VB code... i need to know how to start my system off!! please some1 help me... and i need...
8
mseo
by: mseo | last post by:
hi, everybody I need to design database for export & import company the first problem which I have met is: I want to design the tables and make the relationships to make it like more than one...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.