-
Notifications
You must be signed in to change notification settings - Fork 411
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Projected fit improvements - multiple projections, modifying state #83
Comments
I looked into this a few weeks ago. We require an Association object that is mapped to the relationship table: http://docs.sqlalchemy.org/en/rel_0_9/orm/relationships.html#association-object I was able to kinda get it to work, but not really. I've put it on the backburner for now until I can look into it a bit more. |
I started working on this today and have been able to get it to work. Testing has been minimal, but it looks promising. Association objects are a pain in the ass. Will continue work on this - I'm hoping that I can get this and projection recursion fixed within the next few weeks. I'll be using this space for documentation on issue. As it is right now, projected fits are stored in a HandledList collection just like modules and whatnot. The problem is that this does not open us up for accessing project-specific information (is this projection enables for this fit, etc). We need an association object for that. With my current prototype, projected fits are still accessed as a list in Things to test / todo:
|
I've been able to get calculations to take quantity into account and only go to 1 degree of recursion (all that's needed). This is wonderful - there is virtually no difference in the time to calculate 1x of the projected fit vs 5x of the projected fit. There will definitely be a hardcoded limit of how much qty you can add, but the current test of 5 seems very capable. Might bump it up - I will still need to test with actual fully-loaded fits. right now it's a simple Vengence with a small remote shield transfer projected onto a retribution. A note on fit caching: |
Needed to rethink things. Originally I was setting the ProjectionInfo as a class variable on the fit. This worked well, however I totally didn't take into consideration the fact that each fit persists throughout the program. So if I load a projected fit on ship To combat this, I needed a way to reference which ProjectionInfo we need. I decided to go for a dictionary collection, which will load the ProjectionInfo into dictionaries with the format I should note one think that proved difficult for about 12 hours. The source fits projection info key did not seem to update. ong story short, this is because we use a database session with
I think this is one of the only cases where we deviate from the standard |
Should be done with the merge e74e261 |
Catchup: Merge pyfa-org master into development
Be able to toggle projected fit on/off. I assume it doesn't allow for it atm as a fit doesn't have a state like modules.
If this is the case, might be possible to work it in. Look into adding state information to fits, and investigate possible issues related to this (I project fit
A
onto both fitB
andC
. I toggle state ofA
fromB
, does this affect the toggled state ofC
? etc)The text was updated successfully, but these errors were encountered: