使用PaintCode便捷地实现动画效果

2023-05-16

804040-20190729094059725-804781344.gif

804040-20190725115757382-1381520200.png

//
//  ViewController.m
//  paintCodeTestOC
//
//  Created by LongMa on 2019/7/25.
//
#import "ViewController.h"
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIButton *btn;
@property(nonatomic, strong) UIBezierPath *gPath;
@end
@implementation ViewController
- (void)viewDidLoad {
    [super viewDidLoad];
}
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
    
    CAKeyframeAnimation *pathAnimation = [CAKeyframeAnimation animationWithKeyPath:@"position"];
    pathAnimation.duration = 0.5f;
    pathAnimation.path = self.gPath.CGPath;  // 加入贝塞尔路径
    pathAnimation.calculationMode = kCAAnimationPaced;
    [self.btn.layer addAnimation:pathAnimation forKey:@"movingAnimation"];
}
#pragma mark -  getter
- (UIBezierPath *)gPath{
    if (nil == _gPath) {

         Bezier Drawing,注释部分是飞船原路返回的代码,不想让飞船返回,所以注释掉了。
        UIBezierPath* bezierPath = [UIBezierPath bezierPath];
        [bezierPath moveToPoint: CGPointMake(129.35, -7.42)];
        [bezierPath addCurveToPoint: CGPointMake(130.45, -7.51) controlPoint1: CGPointMake(129.55, -7.44) controlPoint2: CGPointMake(129.92, -7.47)];
        [bezierPath addCurveToPoint: CGPointMake(133.52, -7.76) controlPoint1: CGPointMake(131.34, -7.59) controlPoint2: CGPointMake(132.37, -7.67)];
        [bezierPath addCurveToPoint: CGPointMake(144.2, -8.49) controlPoint1: CGPointMake(136.8, -8.01) controlPoint2: CGPointMake(140.4, -8.26)];
        [bezierPath addCurveToPoint: CGPointMake(191.82, 3.92) controlPoint1: CGPointMake(150.17, -8.86) controlPoint2: CGPointMake(178.94, 0.29)];
        [bezierPath addCurveToPoint: CGPointMake(197.01, 7.47) controlPoint1: CGPointMake(194.29, 4.62) controlPoint2: CGPointMake(195.96, 7.5)];
        [bezierPath addCurveToPoint: CGPointMake(211.52, 12.21) controlPoint1: CGPointMake(203.03, 7.31) controlPoint2: CGPointMake(207.98, 10.16)];
        [bezierPath addCurveToPoint: CGPointMake(223.98, 22.75) controlPoint1: CGPointMake(218.45, 16.22) controlPoint2: CGPointMake(221.13, 21.19)];
        [bezierPath addCurveToPoint: CGPointMake(222.28, 33.56) controlPoint1: CGPointMake(228.38, 25.16) controlPoint2: CGPointMake(227, 30.48)];
        [bezierPath addCurveToPoint: CGPointMake(197.85, 43.69) controlPoint1: CGPointMake(218.1, 36.28) controlPoint2: CGPointMake(210.07, 39.64)];
        [bezierPath addCurveToPoint: CGPointMake(124.01, 67.3) controlPoint1: CGPointMake(162.29, 55.5) controlPoint2: CGPointMake(138.41, 63.08)];
        [bezierPath addCurveToPoint: CGPointMake(113.23, 70.26) controlPoint1: CGPointMake(118.96, 68.78) controlPoint2: CGPointMake(115.46, 69.73)];
        [bezierPath addCurveToPoint: CGPointMake(110.95, 70.7) controlPoint1: CGPointMake(111.84, 70.59) controlPoint2: CGPointMake(111.19, 70.7)];
        [bezierPath addLineToPoint: CGPointMake(111.33, 70.59)];
        [bezierPath addCurveToPoint: CGPointMake(110.23, 71.27) controlPoint1: CGPointMake(111.13, 70.71) controlPoint2: CGPointMake(110.76, 70.94)];
        [bezierPath addCurveToPoint: CGPointMake(107.28, 73.19) controlPoint1: CGPointMake(109.34, 71.82) controlPoint2: CGPointMake(108.35, 72.47)];
        [bezierPath addCurveToPoint: CGPointMake(98.34, 79.99) controlPoint1: CGPointMake(104.23, 75.26) controlPoint2: CGPointMake(101.18, 77.55)];
        [bezierPath addCurveToPoint: CGPointMake(86.16, 96.46) controlPoint1: CGPointMake(91.55, 85.85) controlPoint2: CGPointMake(87.04, 91.72)];
        [bezierPath addCurveToPoint: CGPointMake(95.05, 108.56) controlPoint1: CGPointMake(85.42, 100.44) controlPoint2: CGPointMake(87.82, 104.63)];
        [bezierPath addCurveToPoint: CGPointMake(185.64, 114.88) controlPoint1: CGPointMake(105.4, 114.18) controlPoint2: CGPointMake(132.61, 115.56)];
        [bezierPath addCurveToPoint: CGPointMake(200.5, 114.67) controlPoint1: CGPointMake(189.86, 114.83) controlPoint2: CGPointMake(193.68, 114.77)];
        [bezierPath addCurveToPoint: CGPointMake(264.2, 115.05) controlPoint1: CGPointMake(238.06, 114.09) controlPoint2: CGPointMake(251.66, 114.09)];
        [bezierPath addCurveToPoint: CGPointMake(279.74, 118.26) controlPoint1: CGPointMake(272.23, 115.67) controlPoint2: CGPointMake(277.36, 116.68)];
        [bezierPath addCurveToPoint: CGPointMake(281.37, 125.38) controlPoint1: CGPointMake(281.68, 119.56) controlPoint2: CGPointMake(282.76, 122.29)];
        [bezierPath addCurveToPoint: CGPointMake(276.57, 129.92) controlPoint1: CGPointMake(280.66, 126.97) controlPoint2: CGPointMake(279.12, 128.35)];
        [bezierPath addCurveToPoint: CGPointMake(211.58, 154.52) controlPoint1: CGPointMake(263.8, 137.74) controlPoint2: CGPointMake(241.22, 146.04)];
        [bezierPath addCurveToPoint: CGPointMake(159.25, 167.93) controlPoint1: CGPointMake(194.92, 159.28) controlPoint2: CGPointMake(177.09, 163.8)];
        [bezierPath addCurveToPoint: CGPointMake(142.01, 171.79) controlPoint1: CGPointMake(153.01, 169.37) controlPoint2: CGPointMake(147.21, 170.67)];
        [bezierPath addCurveToPoint: CGPointMake(137.18, 172.82) controlPoint1: CGPointMake(140.19, 172.18) controlPoint2: CGPointMake(138.57, 172.53)];
        [bezierPath addCurveToPoint: CGPointMake(135.46, 173.18) controlPoint1: CGPointMake(136.34, 172.99) controlPoint2: CGPointMake(135.76, 173.11)];
        [bezierPath addCurveToPoint: CGPointMake(133.83, 173.59) controlPoint1: CGPointMake(135.19, 173.24) controlPoint2: CGPointMake(134.62, 173.38)];
        [bezierPath addCurveToPoint: CGPointMake(129.45, 174.79) controlPoint1: CGPointMake(132.51, 173.93) controlPoint2: CGPointMake(131.04, 174.33)];
        [bezierPath addCurveToPoint: CGPointMake(116.15, 179.23) controlPoint1: CGPointMake(124.91, 176.1) controlPoint2: CGPointMake(120.38, 177.59)];
        [bezierPath addCurveToPoint: CGPointMake(98.24, 190.29) controlPoint1: CGPointMake(106.84, 182.84) controlPoint2: CGPointMake(100.3, 186.72)];
        [bezierPath addCurveToPoint: CGPointMake(98.82, 193.07) controlPoint1: CGPointMake(97.6, 191.41) controlPoint2: CGPointMake(97.62, 191.62)];
        [bezierPath addCurveToPoint: CGPointMake(111.2, 200.21) controlPoint1: CGPointMake(100.78, 195.42) controlPoint2: CGPointMake(104.88, 197.85)];
        [bezierPath addLineToPoint: CGPointMake(111.56, 200.44)];
        [bezierPath addCurveToPoint: CGPointMake(154.54, 216.39) controlPoint1: CGPointMake(154.54, 216.39) controlPoint2: CGPointMake(154.54, 216.39)];
        [bezierPath addLineToPoint: CGPointMake(214.06, 232.55)];
        [bezierPath addCurveToPoint: CGPointMake(216.57, 233.04) controlPoint1: CGPointMake(214.47, 232.63) controlPoint2: CGPointMake(215.35, 232.79)];
        [bezierPath addCurveToPoint: CGPointMake(223.34, 234.4) controlPoint1: CGPointMake(218.61, 233.44) controlPoint2: CGPointMake(220.89, 233.9)];
        [bezierPath addCurveToPoint: CGPointMake(243.86, 238.98) controlPoint1: CGPointMake(230.33, 235.85) controlPoint2: CGPointMake(237.33, 237.4)];
        [bezierPath addCurveToPoint: CGPointMake(260.13, 243.34) controlPoint1: CGPointMake(250.1, 240.49) controlPoint2: CGPointMake(255.59, 241.95)];
        [bezierPath addCurveToPoint: CGPointMake(270.82, 247.36) controlPoint1: CGPointMake(264.84, 244.79) controlPoint2: CGPointMake(268.45, 246.13)];
        [bezierPath addCurveToPoint: CGPointMake(273.77, 249.47) controlPoint1: CGPointMake(272.18, 248.07) controlPoint2: CGPointMake(273.15, 248.74)];
        [bezierPath addCurveToPoint: CGPointMake(274.04, 255.67) controlPoint1: CGPointMake(275.02, 250.93) controlPoint2: CGPointMake(275.43, 253.84)];
        [bezierPath addCurveToPoint: CGPointMake(240.96, 259.5) controlPoint1: CGPointMake(272.04, 258.34) controlPoint2: CGPointMake(261.86, 259.5)];
        [bezierPath addCurveToPoint: CGPointMake(154.29, 259.5) controlPoint1: CGPointMake(154.29, 259.5) controlPoint2: CGPointMake(154.29, 259.5)];
        [bezierPath addCurveToPoint: CGPointMake(152.71, 259.43) controlPoint1: CGPointMake(153.98, 259.48) controlPoint2: CGPointMake(153.45, 259.46)];
        [bezierPath addCurveToPoint: CGPointMake(148.49, 259.27) controlPoint1: CGPointMake(151.46, 259.37) controlPoint2: CGPointMake(150.04, 259.32)];
        [bezierPath addCurveToPoint: CGPointMake(124.58, 259.19) controlPoint1: CGPointMake(140.55, 259.03) controlPoint2: CGPointMake(132.29, 258.97)];
        [bezierPath addCurveToPoint: CGPointMake(96.36, 263.79) controlPoint1: CGPointMake(109.56, 259.64) controlPoint2: CGPointMake(99.2, 261.16)];
        [bezierPath addCurveToPoint: CGPointMake(96.1, 264) controlPoint1: CGPointMake(96.15, 263.99) controlPoint2: CGPointMake(96.07, 264.12)];
        [bezierPath addCurveToPoint: CGPointMake(96.1, 262.57) controlPoint1: CGPointMake(96.25, 263.49) controlPoint2: CGPointMake(96.21, 262.85)];
        [bezierPath addCurveToPoint: CGPointMake(98.97, 265.35) controlPoint1: CGPointMake(96.31, 263.12) controlPoint2: CGPointMake(97.29, 264.17)];
        [bezierPath addCurveToPoint: CGPointMake(122.02, 275.72) controlPoint1: CGPointMake(103.02, 268.21) controlPoint2: CGPointMake(110.62, 271.67)];
        [bezierPath addCurveToPoint: CGPointMake(197.86, 302.69) controlPoint1: CGPointMake(197.86, 302.69) controlPoint2: CGPointMake(197.86, 302.69)];
        [bezierPath addLineToPoint: CGPointMake(197.39, 308)];
        [bezierPath addCurveToPoint: CGPointMake(121.55, 281.03) controlPoint1: CGPointMake(197.39, 308) controlPoint2: CGPointMake(197.39, 308)];
        [bezierPath addCurveToPoint: CGPointMake(98.07, 270.44) controlPoint1: CGPointMake(110.01, 276.93) controlPoint2: CGPointMake(102.29, 273.42)];
//        [bezierPath addCurveToPoint: CGPointMake(93.93, 265.8) controlPoint1: CGPointMake(95.89, 268.9) controlPoint2: CGPointMake(94.56, 267.48)];
//        [bezierPath addCurveToPoint: CGPointMake(95.22, 258.9) controlPoint1: CGPointMake(92.89, 263.02) controlPoint2: CGPointMake(93.65, 260.36)];
//        [bezierPath addCurveToPoint: CGPointMake(124.54, 253.8) controlPoint1: CGPointMake(98.59, 255.78) controlPoint2: CGPointMake(108.93, 254.26)];
//        [bezierPath addCurveToPoint: CGPointMake(148.53, 253.88) controlPoint1: CGPointMake(132.29, 253.57) controlPoint2: CGPointMake(140.57, 253.64)];
//        [bezierPath addCurveToPoint: CGPointMake(152.76, 254.03) controlPoint1: CGPointMake(150.09, 253.93) controlPoint2: CGPointMake(151.51, 253.98)];
//        [bezierPath addCurveToPoint: CGPointMake(154.32, 254.1) controlPoint1: CGPointMake(153.51, 254.06) controlPoint2: CGPointMake(154.04, 254.09)];
//        [bezierPath addCurveToPoint: CGPointMake(240.96, 254.1) controlPoint1: CGPointMake(154.29, 254.1) controlPoint2: CGPointMake(154.29, 254.1)];
//        [bezierPath addCurveToPoint: CGPointMake(272.54, 251.18) controlPoint1: CGPointMake(260.68, 254.1) controlPoint2: CGPointMake(271.25, 252.9)];
//        [bezierPath addCurveToPoint: CGPointMake(272.4, 254.12) controlPoint1: CGPointMake(271.91, 252.03) controlPoint2: CGPointMake(272.16, 253.84)];
//        [bezierPath addCurveToPoint: CGPointMake(270.14, 252.58) controlPoint1: CGPointMake(272.05, 253.71) controlPoint2: CGPointMake(271.27, 253.17)];
//        [bezierPath addCurveToPoint: CGPointMake(259.71, 248.68) controlPoint1: CGPointMake(267.88, 251.41) controlPoint2: CGPointMake(264.35, 250.1)];
//        [bezierPath addCurveToPoint: CGPointMake(243.54, 244.34) controlPoint1: CGPointMake(255.21, 247.29) controlPoint2: CGPointMake(249.75, 245.84)];
//        [bezierPath addCurveToPoint: CGPointMake(223.06, 239.77) controlPoint1: CGPointMake(237.02, 242.76) controlPoint2: CGPointMake(230.04, 241.22)];
//        [bezierPath addCurveToPoint: CGPointMake(216.3, 238.4) controlPoint1: CGPointMake(220.61, 239.26) controlPoint2: CGPointMake(218.34, 238.81)];
//        [bezierPath addCurveToPoint: CGPointMake(213.75, 237.91) controlPoint1: CGPointMake(215.08, 238.16) controlPoint2: CGPointMake(214.21, 237.99)];
//        [bezierPath addLineToPoint: CGPointMake(154.1, 221.71)];
//        [bezierPath addCurveToPoint: CGPointMake(110.7, 205.51) controlPoint1: CGPointMake(154.04, 221.69) controlPoint2: CGPointMake(154.04, 221.69)];
//        [bezierPath addLineToPoint: CGPointMake(110.34, 205.27)];
//        [bezierPath addCurveToPoint: CGPointMake(97.43, 197.69) controlPoint1: CGPointMake(104.08, 203.04) controlPoint2: CGPointMake(99.74, 200.47)];
//        [bezierPath addCurveToPoint: CGPointMake(96.46, 186.23) controlPoint1: CGPointMake(94.73, 194.46) controlPoint2: CGPointMake(94.35, 189.91)];
//        [bezierPath addCurveToPoint: CGPointMake(115.64, 173.93) controlPoint1: CGPointMake(99.04, 181.75) controlPoint2: CGPointMake(105.76, 177.76)];
//        [bezierPath addCurveToPoint: CGPointMake(129.06, 169.45) controlPoint1: CGPointMake(119.91, 172.27) controlPoint2: CGPointMake(124.49, 170.77)];
//        [bezierPath addCurveToPoint: CGPointMake(133.48, 168.24) controlPoint1: CGPointMake(130.66, 168.99) controlPoint2: CGPointMake(132.15, 168.59)];
//        [bezierPath addCurveToPoint: CGPointMake(135.17, 167.81) controlPoint1: CGPointMake(134.28, 168.03) controlPoint2: CGPointMake(134.86, 167.89)];
//        [bezierPath addCurveToPoint: CGPointMake(136.89, 167.46) controlPoint1: CGPointMake(135.48, 167.75) controlPoint2: CGPointMake(136.06, 167.63)];
//        [bezierPath addCurveToPoint: CGPointMake(141.72, 166.43) controlPoint1: CGPointMake(138.28, 167.16) controlPoint2: CGPointMake(139.9, 166.82)];
//        [bezierPath addCurveToPoint: CGPointMake(158.94, 162.57) controlPoint1: CGPointMake(146.91, 165.31) controlPoint2: CGPointMake(152.7, 164.01)];
//        [bezierPath addCurveToPoint: CGPointMake(211.19, 149.18) controlPoint1: CGPointMake(176.75, 158.45) controlPoint2: CGPointMake(194.57, 153.93)];
//        [bezierPath addCurveToPoint: CGPointMake(275.77, 124.76) controlPoint1: CGPointMake(240.7, 140.74) controlPoint2: CGPointMake(263.19, 132.47)];
//        [bezierPath addCurveToPoint: CGPointMake(279.36, 121.78) controlPoint1: CGPointMake(277.85, 123.49) controlPoint2: CGPointMake(279.09, 122.37)];
//        [bezierPath addCurveToPoint: CGPointMake(279.39, 123.74) controlPoint1: CGPointMake(279.18, 122.16) controlPoint2: CGPointMake(279.13, 123.1)];
//        [bezierPath addCurveToPoint: CGPointMake(278.88, 123.38) controlPoint1: CGPointMake(279.41, 123.81) controlPoint2: CGPointMake(279.23, 123.61)];
//        [bezierPath addCurveToPoint: CGPointMake(264.1, 120.44) controlPoint1: CGPointMake(276.84, 122.02) controlPoint2: CGPointMake(271.84, 121.04)];
//        [bezierPath addCurveToPoint: CGPointMake(200.52, 120.06) controlPoint1: CGPointMake(251.62, 119.49) controlPoint2: CGPointMake(238.03, 119.49)];
//        [bezierPath addCurveToPoint: CGPointMake(185.66, 120.28) controlPoint1: CGPointMake(193.7, 120.17) controlPoint2: CGPointMake(189.88, 120.22)];
//        [bezierPath addCurveToPoint: CGPointMake(94.34, 113.76) controlPoint1: CGPointMake(132.17, 120.96) controlPoint2: CGPointMake(105.06, 119.58)];
//        [bezierPath addCurveToPoint: CGPointMake(83.62, 94.59) controlPoint1: CGPointMake(85.77, 109.1) controlPoint2: CGPointMake(82.1, 102.72)];
//        [bezierPath addCurveToPoint: CGPointMake(97.27, 75.04) controlPoint1: CGPointMake(84.87, 87.89) controlPoint2: CGPointMake(89.75, 81.52)];
//        [bezierPath addCurveToPoint: CGPointMake(106.41, 68.08) controlPoint1: CGPointMake(100.18, 72.53) controlPoint2: CGPointMake(103.29, 70.19)];
//        [bezierPath addCurveToPoint: CGPointMake(109.41, 66.12) controlPoint1: CGPointMake(107.49, 67.35) controlPoint2: CGPointMake(108.51, 66.69)];
//        [bezierPath addCurveToPoint: CGPointMake(110.57, 65.42) controlPoint1: CGPointMake(109.96, 65.78) controlPoint2: CGPointMake(110.35, 65.54)];
//        [bezierPath addLineToPoint: CGPointMake(110.95, 65.31)];
//        [bezierPath addCurveToPoint: CGPointMake(112.91, 64.9) controlPoint1: CGPointMake(111.05, 65.31) controlPoint2: CGPointMake(111.62, 65.21)];
//        [bezierPath addCurveToPoint: CGPointMake(123.62, 61.96) controlPoint1: CGPointMake(115.11, 64.38) controlPoint2: CGPointMake(118.59, 63.44)];
//        [bezierPath addCurveToPoint: CGPointMake(197.4, 38.37) controlPoint1: CGPointMake(138, 57.75) controlPoint2: CGPointMake(161.86, 50.17)];
//        [bezierPath addCurveToPoint: CGPointMake(221.44, 28.43) controlPoint1: CGPointMake(209.5, 34.36) controlPoint2: CGPointMake(217.42, 31.05)];
//        [bezierPath addCurveToPoint: CGPointMake(223.88, 26.46) controlPoint1: CGPointMake(222.99, 27.42) controlPoint2: CGPointMake(223.86, 26.52)];
//        [bezierPath addCurveToPoint: CGPointMake(224.04, 28.54) controlPoint1: CGPointMake(223.67, 27.25) controlPoint2: CGPointMake(223.82, 28.19)];
//        [bezierPath addCurveToPoint: CGPointMake(223.27, 27.96) controlPoint1: CGPointMake(223.97, 28.42) controlPoint2: CGPointMake(223.7, 28.19)];
//        [bezierPath addCurveToPoint: CGPointMake(197.01, 12.21) controlPoint1: CGPointMake(219.33, 25.8) controlPoint2: CGPointMake(212.55, 16.94)];
//        [bezierPath addCurveToPoint: CGPointMake(144.28, -3.1) controlPoint1: CGPointMake(191.21, 10.44) controlPoint2: CGPointMake(151.38, -3.53)];
//        [bezierPath addCurveToPoint: CGPointMake(133.62, -2.37) controlPoint1: CGPointMake(140.49, -2.86) controlPoint2: CGPointMake(136.9, -2.62)];
//        [bezierPath addCurveToPoint: CGPointMake(130.56, -2.12) controlPoint1: CGPointMake(132.48, -2.28) controlPoint2: CGPointMake(131.45, -2.2)];
//        [bezierPath addCurveToPoint: CGPointMake(129.47, -2.03) controlPoint1: CGPointMake(130.03, -2.08) controlPoint2: CGPointMake(129.66, -2.05)];
//        [bezierPath addLineToPoint: CGPointMake(129.35, -7.42)];
//        [bezierPath closePath];
        _gPath = bezierPath;
    }
    return _gPath;
}
@end

转载于:https://www.cnblogs.com/Dast1/p/11243368.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用PaintCode便捷地实现动画效果 的相关文章

  • HTML个人简介

    lt doctype html gt lt html lang 61 34 en 34 gt lt head gt lt meta charset 61 34 UTF 8 34 gt lt meta name 61 34 Generator
  • 如何查看windows某个目录下所有文件/文件夹的大小?

    如何查看windows某个目录下所有文件 文件夹的大小 xff1f TreeSize Free绿色汉化版是一款硬盘空间管理工具 xff0c 用树形描述出来 xff0c 能够显示文件大小和实际占用空间数及浪费的空间等信息 xff0c 让你做出
  • Kafka服务不可用(宕机)问题踩坑记

    背景 某线上日志收集服务报警 xff0c 打开域名报502错误码 收集服务由2台netty HA服务器组成 netty服务器将客户端投递来的protobuf日志解析并发送到kafka xff0c 打开其中一个应用的日志 xff0c 发现如下
  • Sublime Text 的破解方式

    Sublime Text 破解 xff08 Mac和Windows系统 xff09 Posted on 2013 年 11 月 19 日 3 条评论 6 031 次浏览 继 续分享在 Mac OSX 和 Windows 下破解编码神器 xf
  • 洛谷P1233 木棍加工【单调栈】

    题目 xff1a https www luogu org problemnew show P1233 题意 xff1a 有n根木棍 xff0c 每根木棍有长度和宽度 现在要求按某种顺序加工木棍 xff0c 如果前一根木棍的长度和宽度都大于现
  • 高并发核心知识——ZooKeeper

    ZooKeeper 简介 ZooKeeper是一个开源的分布式协调服务 xff0c 重视高性能 高可用 严格有序的访问 Zookeeper中利用被称为znode的节点保存数据 xff0c 数据将保存在内存 ram 中 xff0c 最多存储1
  • https://gns3.com/community/discussion/gns3-doesn-t-work-on-vmware-play

    swered Question GNS3 doesn t work on VMWARE player 15 Hi guys today I try to install GNS3 on new VMWARE player 15 with V
  • 时间同步服务

    1 NTP时钟同步方式说明 NTP在linux下有两种时钟同步方式 xff0c 分别为直接同步和平滑同步 xff1a 直接同步 使用ntpdate命令进行同步 xff0c 直接进行时间变更 如果服务器上存在一个12点运行的任务 xff0c
  • The Windows 10 May 2020 Update无法更新问题,从1909升级到2004

    今天系统在更新的时候遇到系统提示如下信息 The Windows 10 May 2020 Update is on its way We re offering this update to compatible devices but y
  • 遇到Visual Studio "当前不会命中断点.还没有为该文档加载任何符号"的情况

    一 问题及原因 有这样一种调用逻辑 A exe调用B dll 现在想要在B的源代码中打断点 从A发起进行调试 却给出了 34 当前不会命中断点 还没有为该文档加载任何符号 34 的提示 感觉十分奇怪 各种重新生成 重启VS都没啥用 最后不得
  • Centos 7 Ntop 流量分析 安装

    Centos 6 安装 Ntop xff1a https www cnblogs com weijie0717 p 4886314 html 一 安装 1 添加EPEL 仓库 yum install epel release 2 创建 Nt
  • 三节点搭建openstack-Mitaka版本

    前言 xff1a 现在的云计算平台已经非常火 xff0c 也非常的稳定了 像阿里云平台 xff0c 百度云平台等等 xff0c 今天咱们基于openstack来搭建一个云平台 注意 xff1a 本次平台搭建为三节点搭建 xff08 没有外部
  • POJ滑动窗口

    题目描述 现在有一堆数字共N个数字 xff08 N lt 61 10 6 xff09 xff0c 以及一个大小为k的窗口 现在这个从左边开始向右滑动 xff0c 每次滑动一个单位 xff0c 求出每次滑动后窗口中的最大值和最小值 例如 xf
  • JsonSQL:用SQL语句解析JSON文件

    下午没事干 xff0c 到处闲逛发现一个好玩的东东 xff0c 发出来与大家共享 xff0c 哈哈 一个解析JSON的插件 xff0c 用SQL语法 xff0c 当然只能用简单的条件查询咯 xff0c 不过这个用起比较简单 xff0c 容易
  • windows系统cmd命令行设置、查看、更改环境变量

    问题场景 xff1a 在windows系统 xff0c 做flask项目需要配置qq邮箱的用户 密码 xff0c 为了安全性账户密码需要从OA机的环境变量中设置 获取 xff1a code import os app config 39 M
  • Python之路【第二十五篇】:数据库之pymysql模块

    数据库进阶 一 pymysql模块 pymysql是Python中操作Mysql的模块 xff0c 其使用的方法和py2的MySQLdb几乎相同 二 pymysql模块安装 pip install pymysql 三 执行sql语句 cod
  • centos7 linux中搭建MFS分布式文件系统

    MFS分布式文件系统 mooseFS xff08 moose 驼鹿 xff09 是一款网络分布式文件系统 它把数据分散在多台服务器上 xff0c 但对于用户来讲 xff0c 看到的只是一个源 MFS也像其他类unix文件系统一样 xff0c

随机推荐

  • MAC_BOOKPRO苹果电脑系统常用快捷键大全

    Mac 键盘快捷键 我在品多多上拼的Mac终于到货了 xff0c 安全下车 xff0c 接下来要熟练使用了 xff01 您可以按下某些组合键来实现通常需要鼠标 触控板或其他输入设备才能完成的操作 要使用键盘快捷键 xff0c 请按住一个或多
  • 微信小程序web-view(webview) 嵌套H5页面 唤起微信支付的实现方案

    场景 小程序页面有一个web view组件 xff0c 组件嵌套的H5页面 xff0c 要唤起微信支付 先讲一下我的项目 xff0c 首先我是自己开发的一个H5触屏版的商城系统 xff0c 里面含有购物车 xff0c 订单支付等功能 然后刚
  • Linux-常用命令

    基本命令 查看文件 span class token function ls span span class token comment 列出当前目录文件和文件夹名称 span F span class token comment 输出可以
  • 酒店管理系统(功能结构图、E-R图、用例图)

    功能结构图 用例图 状态图 流程图 数据字典 er图 转载于 https www cnblogs com wang jee p 10828875 html
  • C语言表达分段函数

    void main int x y scanf 34 d 34 amp x if x lt 61 1 y 61 x else if x gt 1 amp amp x lt 10 y 61 2 x 1 else if x gt 61 10 y
  • 拼音转汉字

    description Pinyin to get chinese pinyin from chinese license MIT style authors Bill Lue requires core 1 2 1 39 39 provi
  • windows下C++连接mysql

    平台 xff1a windows c c 43 43 编译器 xff1a vs2017 项目设置 xff1a 项目属性页 xff1a 1 C C 43 43 gt 常规 gt 附加包含目录 gt C Program Files x86 My
  • 制表符概念的理解(c语言角度)

    百度百科给出的答案 xff1a 制表符 xff08 也叫制表位 的功能是在不使用表格的情况下在垂直方向按列对齐文本 比较常见的应用包括名单 简单列表等 也可以应用于制作页眉页脚等同一行有几个对齐位置的行 至于制表符这一概念的由来 xff0c
  • iOS中实现多线程的技术方案

    pthread 实现多线程操作 代码实现 xff1a void run void param for NSInteger i 61 0 i lt 1000 i 43 43 NSLog 64 34 buttonclick zd 64 34 i
  • linux inode 详解 / 线上inode爆满解决方案

    linux inode 详解 线上inode爆满解决方案 本文大量参考阮一峰大神博客 xff0c 整理笔记 之所以写inode文章是由于一次线上问题 xff0c 引发对inode深入的思考 磁盘的inode监控与磁盘空间的监控同等重要 xf
  • vscode调整字体大小

    在vscode中 xff0c 通过setting gt User gt Text Editor gt Font可以调整字体大小 xff0c 但是这里只是调整右侧的代码编辑区域的字体 xff0c 左侧的侧边栏确无法调整字体大小 xff0c 找
  • MyBatis分页插件PageHelper自定义分页逻辑实现

    因为PageHelper对于MySQL的分页逻辑采用的是SQL后面追加limit子句的方式 xff0c 这样在小数据量情况下是没有问题的 但是对于大数据量的时候 xff0c 比如limit 100000 10 xff0c MySQL的运作机
  • 使用estimatedRowHeight的优缺点

    使用estimatedRowHeight的优缺点 1 优点 1 gt 可以降低tableView heightForRowAtIndexPath 方法的调用频率 2 gt 将 计算cell高度的操作 延迟执行了 xff08 相当于cell高
  • 用红蓝3D眼镜在PC上观看3D影片效果并不好

    如题 xff0c 最近试了一下买了副红蓝分色3D眼镜 结果戴上以后放3D蓝光盘只有在画面的静态部分才能正确融像 xff0c 画面上的物体一动起来马上两个像就不能正确融合 xff0c 而是红色部分和蓝色部分直接混在一起闪来闪去 网上找了一圈
  • python----面向对象

    一 面向过程和面向对象优缺点 面向过程 xff1a 优点 xff1a 极大的降低了写程序的复杂度 xff0c 只需要顺着要执行的步骤 xff0c 堆叠代码即可 缺点 xff1a 一套流水线或者流程就是用来解决一个问题 xff0c 代码牵一发
  • Sublime Text Build 3176 安装图文详细教程

    1 著作权声明 1 1 本图文详细教程为 推优创意 原创教程 xff0c 推优创意 拥有著作权 xff0c 未经本人许可 xff0c 谢绝任何形式的全部或部分转载 xff01 违者必究 xff01 1 2 所有文章在 微信公众号 64 推优
  • iOS开发——纯代码界面(UITableViewController)

    创建UITableViewController xff08 表视图控制器 xff09 创建一个类TableViewController继承UITableViewController 1 AppDelegate m中代码如下 xff08 记得
  • iOS-CoreData详解与使用

    上面已经说完了SQLite和FMDB以及两者的区别 xff0c 本篇将讲述iOS中另一个存储方式 xff0c CoreData的使用 通读下来大约10分钟 xff0c 后续还会根据项目中问题 xff0c 不断更新 一 预备知识 在了解Cor
  • Verilog中变量位宽注意

    Verilog中 xff0c 变量定义方式可以为 xff1a reg 位宽 1 0 数据名 xff1b reg 位宽 1 数据名 其他变量也类似 以reg变量cnt为例 xff0c 当cnt位宽为4时 xff0c 可定义为reg 3 0 c
  • 使用PaintCode便捷地实现动画效果

    ViewController m paintCodeTestOC Created by LongMa on 2019 7 25 import 34 ViewController h 34 64 interface ViewControlle