我正在搞乱Windows Phone 7 sdk,我试图让屏幕看起来像一个旧时尚的数字显示器.现在我正在试图弄清楚如何使文字"发光"像那些酷炫的数字时钟之一.这是我认为你会使用着色器的东西,但似乎在Windows Phone 7操作系统上禁用着色器.有任何想法吗?更具体地说,我希望文本看起来好像是一个光源,并且颜色与实际字体略有"流血".
我正在使用python 3进行额外的小额信用分配来编写RSA破解程序.老师给了我们一个相当大的(大到足以要求超过32位)int和公钥.我的代码适用于<32位的素数.我选择python 3的原因之一是因为我听说它可以处理任意大整数.在python终端中,我通过执行诸如2**35和factorial(70)之类的小事来测试它.这个东西工作得很好.
现在我已经编写了代码,我遇到了溢出错误等问题.为什么大数字上的操作似乎在终端中工作但在我的实际代码中不起作用?错误表明它们无法转换为它们的C类型,所以我的第一个猜测是由于某种原因,python解释器中的东西不是转换为C类型而编码的东西.反正有没有让这个工作?
作为第一次尝试,我尝试计算1和n之间所有素数的列表(大数).这种方式有效,直到我意识到列表索引器[]只接受整数并且如果数字高于int则爆炸.此外,如果n> 2**32,则创建长度为n的数组将不起作用.(更不用说这将占用的记忆)
因此,我转而使用我发现的函数,可以非常准确地猜测数字是否为素数.这些方法粘贴在下面.
如您所见,我只做*,/和%操作.所有这些似乎都在解释器中工作,但是当与此代码一起使用时,我得到"无法转换为c类型"错误.
def power_mod(a,b,n):
if b < 0:
return 0
elif b == 0:
return 1
elif b % 2 == 0:
return power_mod(a*a, b/2, n) % n
else:
return (a * power_mod(a,b-1,n)) % n
Run Code Online (Sandbox Code Playgroud)
最后3行是无法转换为c-type的地方.
下面的函数非常确定地估计一个数是素数.如上所述,我用它来避免创建大规模数组.
def rabin_miller(n, tries = 7):
if n == 2:
return True
if n % 2 == 0 or n < 2:
return False
p = primes(tries**2)
if n in p:
return True
s = n …Run Code Online (Sandbox Code Playgroud) 所以我有一个我已制作的仪表,可以顺时针或逆时针方向制作动画.每隔一段时间,新数据就会进入我设置的两个依赖属性.当这些属性中的数据发生变化时,我想对两个值进行一些计算,以确定仪表针的旋转方向(以及多少).
我有旋转代码工作,我写了一个函数(全部用C#),它取旋转的起始角度,结束角度和持续时间.旋转功能起作用,我可以将值放入并观察针旋转.
我无法弄清楚怎么做是在任何一个依赖属性改变时调用这个动画函数.将旋转函数设置为静态是不合适的,因为旋转调用最终可能是特定于实例的.
换句话说,我想要实现的是PropertyChanged->计算新位置/速度 - >构建故事板并运行动画.
我有依赖属性而不是标准属性的原因是因为它们被xaml绑定到控件之外.
谢谢!
private void AnimatePointer(double startAngle, double endAngle, TimeSpan length, string pointerName)
{
DoubleAnimation handRotation = new DoubleAnimation();
handRotation.From = startAngle;
handRotation.To = endAngle;
handRotation.Duration = new Duration(length);
Storyboard.SetTargetName(handRotation, pointerName);
DependencyProperty[] propertyChain =
new DependencyProperty[]
{
Rectangle.RenderTransformProperty,
TransformGroup.ChildrenProperty,
RotateTransform.AngleProperty
};
string anglePath = "(0).(1)[1].(2)";
PropertyPath propPath = new PropertyPath(anglePath, propertyChain);
Storyboard.SetTargetProperty(handRotation, propPath);
Storyboard sb = new Storyboard();
sb.Children.Add(handRotation);
sb.Begin(this);
}
Run Code Online (Sandbox Code Playgroud)