diff --git a/gui/builtinGraphs/fitDamageStats.py b/gui/builtinGraphs/fitDamageStats.py index 9d3cbed94..c8680534b 100644 --- a/gui/builtinGraphs/fitDamageStats.py +++ b/gui/builtinGraphs/fitDamageStats.py @@ -423,4 +423,16 @@ class FitDamageStatsGraph(FitGraph): return xs, ys +def calculateAngularVelocity(atkSpeed, atkAngle, atkRadius, distance, tgtSpeed, tgtAndle, tgtRadius): + ctcDistance = atkRadius + distance + tgtRadius + + +def calculateRangeFactor(atkOptimalRange, atkFalloffRange, distance): + return 0.5 ** ((max(0, distance - atkOptimalRange) / atkFalloffRange) ** 2) + + +def calculateTrackingFactor(atkTracking, atkOptimalSigRadius, angularSpeed, tgtSigRadius): + return 0.5 ** (((angularSpeed * atkOptimalSigRadius) / (atkTracking * tgtSigRadius)) ** 2) + + FitDamageStatsGraph.register() diff --git a/gui/builtinGraphs/fitDmgVsTime.py b/gui/builtinGraphs/fitDmgVsTime.py deleted file mode 100644 index cf2af9284..000000000 --- a/gui/builtinGraphs/fitDmgVsTime.py +++ /dev/null @@ -1,48 +0,0 @@ -# ============================================================================= -# Copyright (C) 2010 Diego Duclos -# -# This file is part of pyfa. -# -# pyfa is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# pyfa is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with pyfa. If not, see . -# ============================================================================= - - -from collections import OrderedDict - -from eos.graph.fitDmgVsTime import FitDmgVsTimeGraph as EosGraphDmg -from eos.graph.fitDpsVsTime import FitDpsVsTimeGraph as EosGraphDps -from .base import FitGraph, XDef, YDef - - -class FitDmgVsTimeGraph(FitGraph): - - name = 'Damage vs Time' - - def __init__(self): - super().__init__() - self.eosGraphDmg = EosGraphDmg() - self.eosGraphDps = EosGraphDps() - - @property - def xDef(self): - return XDef(inputDefault='0-80', inputLabel='Time (seconds)', inputIconID=1392, axisLabel='Time, s') - - @property - def yDefs(self): - return OrderedDict([ - ('damage', YDef(switchLabel='Damage inflicted', axisLabel='Damage', eosGraph='eosGraphDmg')), - ('dps', YDef(switchLabel='DPS', axisLabel='DPS', eosGraph='eosGraphDps'))]) - - -FitDmgVsTimeGraph.register() diff --git a/gui/graphFrame/panel.py b/gui/graphFrame/panel.py index 8ae9a127f..4f0105387 100644 --- a/gui/graphFrame/panel.py +++ b/gui/graphFrame/panel.py @@ -85,7 +85,7 @@ class GraphControlPanel(wx.Panel): self.tgtVectorSizer = wx.BoxSizer(wx.VERTICAL) self.tgtVectorLabel = wx.StaticText(self, wx.ID_ANY, '') self.tgtVectorSizer.Add(self.tgtVectorLabel, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.BOTTOM, 5) - self.tgtVector = VectorPicker(self, style=wx.NO_BORDER, size=75, offset=-90) + self.tgtVector = VectorPicker(self, style=wx.NO_BORDER, size=75, offset=90) self.tgtVector.Bind(VectorPicker.EVT_VECTOR_CHANGED, self.OnFieldChanged) self.tgtVectorSizer.Add(self.tgtVector, 0, wx.SHAPED | wx.ALIGN_CENTER_HORIZONTAL | wx.ALIGN_CENTER_VERTICAL | wx.ALL, 0) graphOptsSizer.Add(self.tgtVectorSizer, 0, wx.EXPAND | wx.LEFT, 10)