Opa_omroep-automatiseren/venv/lib/python3.8/site-packages/convertdate/daycount.py

44 lines
1.1 KiB
Python
Raw Normal View History

2020-12-27 20:00:11 +00:00
# -*- coding: utf-8 -*-
# This file is part of convertdate.
# http://github.com/fitnr/convertdate
# Licensed under the MIT license:
# http://opensource.org/licenses/MIT
# Copyright (c) 2016, fitnr <fitnr@fakeisthenewreal>
from . import gregorian
from . import julianday
from . import julian
class DayCount(object):
'''A day count converter for the given epoch (in terms of Julian Day Count)'''
def __init__(self, epoch):
self.epoch = epoch
def to_gregorian(self, dc):
return gregorian.from_jd(self.to_jd(dc))
def from_gregorian(self, year, month, day):
return self.from_jd(gregorian.to_jd(year, month, day))
def to_jd(self, dc):
return dc + self.epoch
def from_jd(self, jdc):
return jdc - self.epoch
def from_julian(self, year, month, day):
return self.from_jd(julian.to_jd(year, month, day))
def to_julian(self, dc):
return julian.from_jd(self.to_jd(dc))
def to_datetime(self, dc):
return julianday.to_datetime(self.to_jd(dc))
def from_datetime(self, dt):
return self.from_jd(julianday.from_datetime(dt))