Add more columns for other graph types
This commit is contained in:
@@ -38,6 +38,7 @@ class FitCapRegenGraph(FitGraph):
|
||||
inputs = [
|
||||
Input(handle='time', unit='s', label='Time', iconID=1392, defaultValue=120, defaultRange=(0, 300), mainOnly=True),
|
||||
Input(handle='capAmount', unit='%', label='Cap amount', iconID=1668, defaultValue=25, defaultRange=(0, 100), mainOnly=True)]
|
||||
srcExtraCols = ('CapAmount', 'CapTime')
|
||||
|
||||
# Calculation stuff
|
||||
_normalizers = {
|
||||
|
||||
@@ -35,6 +35,7 @@ class FitMobilityVsTimeGraph(FitGraph):
|
||||
YDef(handle='distance', unit='km', label='Distance')]
|
||||
inputs = [
|
||||
Input(handle='time', unit='s', label='Time', iconID=1392, defaultValue=10, defaultRange=(0, 30), mainOnly=False)]
|
||||
srcExtraCols = ('Speed', 'Agility')
|
||||
|
||||
# Calculation stuff
|
||||
_denormalizers = {
|
||||
|
||||
@@ -41,6 +41,7 @@ class FitShieldRegenGraph(FitGraph):
|
||||
inputs = [
|
||||
Input(handle='time', unit='s', label='Time', iconID=1392, defaultValue=120, defaultRange=(0, 300), mainOnly=True),
|
||||
Input(handle='shieldAmount', unit='%', label='Shield amount', iconID=1384, defaultValue=25, defaultRange=(0, 100), mainOnly=True)]
|
||||
srcExtraCols = ('ShieldAmount', 'ShieldTime')
|
||||
|
||||
# Calculation stuff
|
||||
_normalizers = {
|
||||
|
||||
@@ -51,6 +51,7 @@ class FitWarpTimeGraph(FitGraph):
|
||||
inputs = [
|
||||
Input(handle='distance', unit='AU', label='Distance', iconID=1391, defaultValue=20, defaultRange=(0, 50), mainOnly=False),
|
||||
Input(handle='distance', unit='km', label='Distance', iconID=1391, defaultValue=1000, defaultRange=(150, 5000), mainOnly=False)]
|
||||
srcExtraCols = ('WarpSpeed', 'WarpDistance')
|
||||
|
||||
# Calculation stuff
|
||||
_normalizers = {
|
||||
|
||||
@@ -110,12 +110,29 @@ class SpeedColumn(GraphColumn):
|
||||
return fit.ship.getModifiedItemAttr('maxVelocity'), 'm/s'
|
||||
|
||||
def _getFitTooltip(self):
|
||||
return 'Ship maximum speed'
|
||||
return 'Maximum speed'
|
||||
|
||||
|
||||
SpeedColumn.register()
|
||||
|
||||
|
||||
class AgilityColumn(GraphColumn):
|
||||
|
||||
name = 'Agility'
|
||||
|
||||
def __init__(self, fittingView, params):
|
||||
super().__init__(fittingView, 1401, (3, 0, 0))
|
||||
|
||||
def _getValue(self, fit):
|
||||
return fit.alignTime, None
|
||||
|
||||
def _getFitTooltip(self):
|
||||
return 'Agility factor'
|
||||
|
||||
|
||||
AgilityColumn.register()
|
||||
|
||||
|
||||
class RadiusColumn(GraphColumn):
|
||||
|
||||
name = 'Radius'
|
||||
@@ -127,7 +144,7 @@ class RadiusColumn(GraphColumn):
|
||||
return fit.ship.getModifiedItemAttr('radius'), 'm'
|
||||
|
||||
def _getFitTooltip(self):
|
||||
return 'Ship radius'
|
||||
return 'Radius'
|
||||
|
||||
|
||||
RadiusColumn.register()
|
||||
@@ -144,7 +161,125 @@ class SignatureRadiusColumn(GraphColumn):
|
||||
return fit.ship.getModifiedItemAttr('signatureRadius'), 'm'
|
||||
|
||||
def _getFitTooltip(self):
|
||||
return 'Ship signature radius'
|
||||
return 'Signature radius'
|
||||
|
||||
|
||||
SignatureRadiusColumn.register()
|
||||
|
||||
|
||||
class ShieldAmountColumn(GraphColumn):
|
||||
|
||||
name = 'ShieldAmount'
|
||||
|
||||
def __init__(self, fittingView, params):
|
||||
super().__init__(fittingView, 1384)
|
||||
|
||||
def _getValue(self, fit):
|
||||
return fit.ship.getModifiedItemAttr('shieldCapacity'), 'HP'
|
||||
|
||||
def getText(self, stuff):
|
||||
if isinstance(stuff, Fit):
|
||||
val, unit = self._getValue(stuff)
|
||||
if val is None:
|
||||
return ''
|
||||
return '{} {}'.format(formatAmount(val, *self.formatSpec), unit)
|
||||
return ''
|
||||
|
||||
def _getFitTooltip(self):
|
||||
return 'Maximum shield amount'
|
||||
|
||||
|
||||
ShieldAmountColumn.register()
|
||||
|
||||
|
||||
class ShieldTimeColumn(GraphColumn):
|
||||
|
||||
name = 'ShieldTime'
|
||||
|
||||
def __init__(self, fittingView, params):
|
||||
super().__init__(fittingView, 1392, (3, 0, 0))
|
||||
|
||||
def _getValue(self, fit):
|
||||
return fit.ship.getModifiedItemAttr('shieldRechargeRate') / 1000, 's'
|
||||
|
||||
def _getFitTooltip(self):
|
||||
return 'Time to regenerate shield from 0% to 98.7%'
|
||||
|
||||
|
||||
ShieldTimeColumn.register()
|
||||
|
||||
|
||||
class CapAmountColumn(GraphColumn):
|
||||
|
||||
name = 'CapAmount'
|
||||
|
||||
def __init__(self, fittingView, params):
|
||||
super().__init__(fittingView, 1668)
|
||||
|
||||
def _getValue(self, fit):
|
||||
return fit.ship.getModifiedItemAttr('capacitorCapacity'), 'GJ'
|
||||
|
||||
def getText(self, stuff):
|
||||
if isinstance(stuff, Fit):
|
||||
val, unit = self._getValue(stuff)
|
||||
if val is None:
|
||||
return ''
|
||||
return '{} {}'.format(formatAmount(val, *self.formatSpec), unit)
|
||||
return ''
|
||||
|
||||
def _getFitTooltip(self):
|
||||
return 'Maximum capacitor amount'
|
||||
|
||||
|
||||
CapAmountColumn.register()
|
||||
|
||||
|
||||
class CapTimeColumn(GraphColumn):
|
||||
|
||||
name = 'CapTime'
|
||||
|
||||
def __init__(self, fittingView, params):
|
||||
super().__init__(fittingView, 1392, (3, 0, 0))
|
||||
|
||||
def _getValue(self, fit):
|
||||
return fit.ship.getModifiedItemAttr('rechargeRate') / 1000, 's'
|
||||
|
||||
def _getFitTooltip(self):
|
||||
return 'Time to regenerate capacitor from 0% to 98.7%'
|
||||
|
||||
|
||||
CapTimeColumn.register()
|
||||
|
||||
|
||||
class WarpSpeedColumn(GraphColumn):
|
||||
|
||||
name = 'WarpSpeed'
|
||||
|
||||
def __init__(self, fittingView, params):
|
||||
super().__init__(fittingView, 1389, (3, 0, 0))
|
||||
|
||||
def _getValue(self, fit):
|
||||
return fit.warpSpeed, 'AU/s'
|
||||
|
||||
def _getFitTooltip(self):
|
||||
return 'Warp speed'
|
||||
|
||||
|
||||
WarpSpeedColumn.register()
|
||||
|
||||
|
||||
class WarpDistanceColumn(GraphColumn):
|
||||
|
||||
name = 'WarpDistance'
|
||||
|
||||
def __init__(self, fittingView, params):
|
||||
super().__init__(fittingView, 1391, (3, 0, 0))
|
||||
|
||||
def _getValue(self, fit):
|
||||
return fit.maxWarpDistance, 'AU'
|
||||
|
||||
def _getFitTooltip(self):
|
||||
return 'Maximum warp distance'
|
||||
|
||||
|
||||
WarpDistanceColumn.register()
|
||||
|
||||
Reference in New Issue
Block a user