//
//  DMKConvertTool.h
//  DMKMap
//
//  Created by yunfei on 2025/3/19.
//

#import <Foundation/Foundation.h>
#import <DiMapKit/DiGeometry.h>
#import <DiMapKit/DiTypes.h>
#import "DMKGeometry.h"
#import "DMKType.h"
#import <DiMapKit/DiPinAnnotationView.h>
#import <objc/runtime.h>

FOUNDATION_EXPORT NSString * _description(id object, NSArray<NSString *> *filterKey);

@interface DMKConvertTool : NSObject

#pragma mark - point互转

+ (DMKMapPoint)convertToDMKMapPoint:(DiMapPoint)point;

+ (DiMapPoint)convertToDiMapPoint:(DMKMapPoint)point;

#pragma mark - size互转

+ (DMKMapSize)convertToDMKMapSize:(DiMapSize)size;

+ (DiMapSize)convertToDiMapSize:(DMKMapSize)size;

#pragma mark - rect互转

+ (DMKMapRect)convertToDMKRect:(DiMapRect)rect;

+ (DiMapRect)convertToDiMapRect:(DMKMapRect)rect;

#pragma mark - region互转

+ (DMKCoordinateRegion)convertToDMKRegion:(DiCoordinateRegion)region;

+ (DiCoordinateRegion)convertToDiMapRegion:(DMKCoordinateRegion)region;

#pragma mark - language互转

+ (DMKMapLanguage)convertToDMKLanguage:(DiMapLanguage)language;

+ (DiMapLanguage)convertToDiLanguage:(DMKMapLanguage)language;

#pragma mark - trackingMode互转

+ (DMKUserTrackingMode)convertToDMKTrackingMode:(DiMUserTrackingMode)trackingMode;

+ (DiMUserTrackingMode)convertToDiTrackingMode:(DMKUserTrackingMode)trackingMode;

#pragma mark - annotationColor互转

+ (DMKPinAnnotationColor)convertToDMKPinAnnotationColor:(DiPinAnnotationColor)annoColor;

+ (DiPinAnnotationColor)convertToDiPinAnnotationColor:(DMKPinAnnotationColor)annoColor;

@end
